X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> доработка zoomi.js
choppylion
choppylion
Topic Starter сообщение 23.3.2011, 22:30; Ответить: choppylion
Сообщение #1


Всем привет. Есть данный скрипт, увеличивающий изображение по наводке, но все изображения у меня хранятся в выпадающих пунктах меню, задающиеся так:
<option value="2132" data-icon="img/products/1056.png" data-html-text="BSD WZA&lt;i&gt;2132 gr&lt;/i&gt;">BSD WZA</option>


Как можно доработать сам скрипт, чтобы он работал в меню?

[JS](function($){

$.fn.zoomi = function() {
$(this).filter("img").each(function(){
if(!this.z) {
$(this).zoom1().mouseover(function(){$(this).zoom2().show();});
$(this.z).mouseout(function(){$(this).hide();}); }
});
return this;
}

$.fn.zoom1 = function() {
$(this).each(function(){
var e = this;
$(e).css({'position':'relative','z-index':'8'}).after('<img class="'+e.className+'">');
e.z = e.nextSibling;
$(e.z).removeClass("zoomi").addClass("zoom2").attr("src",e.alt || e.src)
.css({'position':'absolute','z-index':'10'});
$(e.z).hide();
});
return this;
}

$.fn.zoom2 = function() {
var s = [];
this.each(function(){
var e = this;
if(!e.z) e = $(e).zoom1()[0]; s.push(e.z);
if(!e.z.complete) return;
if(!e.z.width) { $(e.z).show(); e.z.width=e.z.width; $(e.z).hide(); }
$(e.z).css({left:$(e).offsetLeft()-(e.z.width-e.scrollWidth)/2+'px',
top:$(e).offsetTop()-(e.z.height-e.scrollHeight)/2+'px'});
});
return this.pushStack(s);
}

$.fn.offsetLeft = function() {
var e = this[0];
if(!e.offsetParent) return e.offsetLeft;
return e.offsetLeft + $(e.offsetParent).offsetLeft(); }

$.fn.offsetTop = function() {
var e = this[0];
if(!e.offsetParent) return e.offsetTop;
return e.offsetTop + $(e.offsetParent).offsetTop(); }

$(function(){ $('img.zoomi').zoomi(); });

})(jQuery);
[/JS]

Вот мои наработки:
<option class="zoomi" value="2177" data-icon="img/products/1056.png" alt="img/products/1056b.png" data-html-text="BSD WZA&lt;i&gt;2177 gr&lt;/i&gt;">BSD WZA</option>


[JS](function($){

$.fn.zoomi = function() {
$(this).filter("option").each(function(){
if(!this.z) {
$(this).zoom1().mouseover(function(){$(this).zoom2().show();});
$(this.z).mouseout(function(){$(this).hide();}); }
});
return this;
}

$.fn.zoom1 = function() {
$(this).each(function(){
var e = this;
$(e).css({'position':'relative','z-index':'8'}).after(<option class="'+e.className+'">');
e.z = e.nextSibling;
$(e.z).removeClass("zoomi").addClass("zoom2").attr("data-icon",e.alt || e.src)
.css({'position':'absolute','z-index':'10'});
$(e.z).hide();
});
return this;
}

$.fn.zoom2 = function() {
var s = [];
this.each(function(){
var e = this;
if(!e.z) e = $(e).zoom1()[0]; s.push(e.z);
if(!e.z.complete) return;
if(!e.z.width) { $(e.z).show(); e.z.width=e.z.width; $(e.z).hide(); }
$(e.z).css({left:$(e).offsetLeft()-(e.z.width-e.scrollWidth)/2+'px',
top:$(e).offsetTop()-(e.z.height-e.scrollHeight)/2+'px'});
});
return this.pushStack(s);
}

$.fn.offsetLeft = function() {
var e = this[0];
if(!e.offsetParent) return e.offsetLeft;
return e.offsetLeft + $(e.offsetParent).offsetLeft(); }

$.fn.offsetTop = function() {
var e = this[0];
if(!e.offsetParent) return e.offsetTop;
return e.offsetTop + $(e.offsetParent).offsetTop(); }

$(function(){ $('img.zoomi').zoomi(); });

})(jQuery);[/JS]

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Разработка/доработка сайтов Wordpress, HTML/CSS/JS
Вёрстка, перенос на WP, правки
9 malamut 3487 25.1.2024, 14:36
автор: malamut
Открытая тема (нет новых ответов) Разработка и доработка сайтов на DRUPAL и WP
Профессиональная помощь с сайтами на Drupal
2 dragondesign 1561 22.9.2022, 23:33
автор: dragondesign
Открытая тема (нет новых ответов) Верстка, доработка, исправление
0 flamersoft 1106 9.3.2021, 8:15
автор: flamersoft
Открытая тема (нет новых ответов) Доработка сайта на WP
2 tiptopvkr 1330 4.3.2021, 10:35
автор: tiptopvkr
Открытая тема (нет новых ответов) Доработка сайта Joomla + VirtuMart
0 Intuit_Design 1189 4.2.2021, 15:05
автор: Intuit_Design


 



RSS Текстовая версия Сейчас: 24.4.2024, 15:57
Дизайн