嗨,我整天都遇到麻烦,它几乎可以工作但不完全,一旦单击缩略图,我需要相应的 p(#p-1 等)保持突出显示。我已经为图像滑块使用了插件,我稍微自定义了它,并且 mouseover 和 mouseleave 事件工作正常,但单击事件似乎没有将类添加到目标段落。
jsfiddle 示例http://jsfiddle.net/RVYnb/7/
相关的 jQuery 是在示例中内联编写的。
这让我发疯,请帮助!
嗨,我整天都遇到麻烦,它几乎可以工作但不完全,一旦单击缩略图,我需要相应的 p(#p-1 等)保持突出显示。我已经为图像滑块使用了插件,我稍微自定义了它,并且 mouseover 和 mouseleave 事件工作正常,但单击事件似乎没有将类添加到目标段落。
jsfiddle 示例http://jsfiddle.net/RVYnb/7/
相关的 jQuery 是在示例中内联编写的。
这让我发疯,请帮助!
错误出现在图像滑块插件中。它还绑定到代码中的单击事件。
这是插件中的相关代码部分:
jQuery("div#thumbSlider" + j + " a").each(function(z) {
jQuery(this).bind("click", function(){
jQuery(this).find("p.tmbrdr").css({borderColor: settings.thumbsActiveBorderColor, opacity: settings.thumbsActiveBorderOpacity});
jQuery(this).parent().parent().find("p.tmbrdr").not(jQuery(this).find("p.tmbrdr")).css({borderColor: settings.thumbsBorderColor, opacity: settings.thumbsBorderOpacity});
var cnt = -(pictWidth*z);
(cnt != container.find("ul").css("left").replace(/px/, "")) ? container.find("span.typo").animate({"opacity": 0}, 250) : null ;
container.find("ul").animate({ left: cnt}, settings.easeTime, settings.easeFunc, function(){container.find("span.typo").animate({"opacity": settings.typoFullOpacity}, 250)});
return false;
});
});
问题是最后的“return false”。它停止传播到其他点击事件。
将代码更改为以下内容:
Query(this).bind("click", function(e){
jQuery(this).find("p.tmbrdr").css({borderColor: settings.thumbsActiveBorderColor, opacity: settings.thumbsActiveBorderOpacity});
jQuery(this).parent().parent().find("p.tmbrdr").not(jQuery(this).find("p.tmbrdr")).css({borderColor: settings.thumbsBorderColor, opacity: settings.thumbsBorderOpacity});
var cnt = -(pictWidth*z);
(cnt != container.find("ul").css("left").replace(/px/, "")) ? container.find("span.typo").animate({"opacity": 0}, 250) : null ;
container.find("ul").animate({ left: cnt}, settings.easeTime, settings.easeFunc, function(){container.find("span.typo").animate({"opacity": settings.typoFullOpacity}, 250)});
e.preventDefault();
});
});
它应该可以工作。
根据“小提琴”,在我看来,您的“点击”事件不适用于您的缩略图。它永远不会将“点击”类添加到您的
.
我对此提出了“警告”:
$("#t1").live("click", function() {
alert('clicking');
$("#p-1").addClass("clicked").addClass("highlighted");
});
并且警报从未弹出。