Javascript 是否仅在第一次单击时在单击时执行动画?
我有多个带有Javascript 是否仅在第一次单击时在单击时执行动画?,javascript,jquery,Javascript,Jquery,我有多个带有rel=”“的锚定标签 当我点击任何时,我会在另一个div中使用fadeIn效果显示一个带有rel值的大图像 我想做的是检查大图像是否与锚定的rel具有相同的src,如果是,则防止fadeIn效应 $(document).ready(function () { $("a.largeimg").click(function () { var image = $(this).attr("rel"); $('.main-product-i
rel=”“
的锚定标签
当我点击任何
时,我会在另一个div中使用fadeIn效果显示一个带有rel
值的大图像
我想做的是检查大图像是否与锚定的rel
具有相同的src
,如果是,则防止fadeIn
效应
$(document).ready(function () {
$("a.largeimg").click(function () {
var image = $(this).attr("rel");
$('.main-product-image').html('<img src="' + image + '"/>');
$('.main-product-image img').hide();
$('.main-product-image img').fadeIn();
return false;
if(src == image) {
$('.main-product-image img').show();
}
});
$(文档).ready(函数(){
$(“a.largeimg”)。单击(函数(){
var image=$(this.attr(“rel”);
$('.main product image').html('');
$('.main product image img').hide();
$('.main product image img').fadeIn();
返回false;
if(src==图像){
$('.main product image img').show();
}
});
您可以检查锚点的rel和图像的src是否相同,如果相同,则在淡入代码之前退出该函数,如下所示:
var src = $('.main-product-image img').attr("src");
if (src == image) return false;
如果我正确理解您的问题,在动画之前,您需要确认图像的
src
是否等于单击元素的rel
属性,从而阻止动画
JQUERY
$(document).ready(function () {
// use bind when targeting many elements
$("a.largeimg").bind("click", function () {
var $target = $('.main-product-image'), // target element
src = $target.find('img').attr("src"), // src from existent image
image = $(this).attr("rel"); // rel from clicked element
// if src different from image
if (src != image) {
$target.html('<img src="' + image + '"/>'); // append new image
$target.find('img').hide().fadeIn(); // perform the animation
}
// prevent the browser from continuing to bubble the clicked element
return false;
});
});
$(文档).ready(函数(){
//针对多个元素时使用绑定
$(“a.largeimg”).bind(“单击”),函数(){
var$target=$('.main product image'),//目标元素
src=$target.find('img').attr(“src”),//来自现有映像的src
image=$(this).attr(“rel”);//单击元素的rel
//如果src与图像不同
如果(src!=图像){
$target.html(“”);//追加新图像
$target.find('img').hide().fadeIn();//执行动画
}
//防止浏览器继续冒泡单击的元素
返回false;
});
});
Ps:
未经测试,但应该可以正常工作!很难理解您的问题。请尝试将问题弄清楚:)或演示示例以更好地理解问题。