Jquery 针对多个功能的单击事件
我有以下代码:Jquery 针对多个功能的单击事件,jquery,click,Jquery,Click,我有以下代码: $('#picture-div').click(function(){ $('#div-in-document').fadeToggle('slow', $func1); }); $('#picture-div2').click(function(){ $('#div-in-document2').fadeToggle('slow', $func2); }); 我试图把它变成一个点击事件,但似乎无法使它工作。我尝试了以下方法: $('#picture-div ,
$('#picture-div').click(function(){
$('#div-in-document').fadeToggle('slow', $func1);
});
$('#picture-div2').click(function(){
$('#div-in-document2').fadeToggle('slow', $func2);
});
我试图把它变成一个点击事件,但似乎无法使它工作。我尝试了以下方法:
$('#picture-div ,#picture-div2').click(function(){
if($(this) == '#picture-div')
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
但这总是转到else
,因此我的if语句无效
谢谢。也许是这样的:
$('#picture-div ,#picture-div2').click(function(){
if($(this).attr("id") == '#picture-div')
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
或者您可以制作一种映射:
var arr = [ { selector: "#picture-div", subselector: "#div-in-document", func: $func1},
{ selector: "#picture-div2", subselector: "#div-in-document2", func: $func2}]
并通过它来分配处理程序:
for(int i = 0; i < arr.length; i++)
{
$(arr[i].selector).click(function(){
$(arr[i].subselector).fadeToggle('slow', arr[i].func);
});
}
for(int i=0;i
可能是这样的:
$('#picture-div ,#picture-div2').click(function(){
if($(this).attr("id") == '#picture-div')
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
或者您可以制作一种映射:
var arr = [ { selector: "#picture-div", subselector: "#div-in-document", func: $func1},
{ selector: "#picture-div2", subselector: "#div-in-document2", func: $func2}]
并通过它来分配处理程序:
for(int i = 0; i < arr.length; i++)
{
$(arr[i].selector).click(function(){
$(arr[i].subselector).fadeToggle('slow', arr[i].func);
});
}
for(int i=0;i
试试这个,我希望它能起作用
$('#picture-div ,#picture-div2').click(function(){
if($(this) == $('#picture-div'))
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
我还没有测试过它,但我很确定它会起作用。试试这个,我希望它能起作用
$('#picture-div ,#picture-div2').click(function(){
if($(this) == $('#picture-div'))
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
我还没有测试过它,但我非常确定它会起作用。使用
数据-*
属性更改标记,如:
$('#picture-div ,#picture-div2').click(function(){
if($(this) == $('#picture-div'))
$('#div-in-document').fadeToggle('slow', $func);
else
$('#div-in-document2').fadeToggle('slow', $func2);
});
<div class="picture-div" data-target="someId">...</div>
<div class="picture-div" data-target="someOtherId">...</div>
可维护性是安全的,hoorray。使用
数据-*
属性更改标记,如:
<div class="picture-div" data-target="someId">...</div>
<div class="picture-div" data-target="someOtherId">...</div>
可维护性是安全的,胡说八道。如果我单击其中一个,两个都会显示,因此不起作用。Zenith Suggestion也会发生同样的情况。请您也粘贴div的代码,因为根据我的说法,上面的代码应该可以使用:(第32-35行是相关代码),但我认为这与我上面写的相同。请让我知道是否有一些不同。如果我单击一个,两个都会显示,因此无法工作。Zenith Suggestion也会发生同样的情况。请您也粘贴div的代码,因为根据我的说法,上面的代码应该可以使用:(第32-35行是相关代码),但我认为这与我上面写的相同。请让我知道是否有一些不同的书,如正确的人删除了他的帖子(?)。不管怎样,我试过了,效果很好,谢谢!看起来正确的人删除了他的帖子(?)。不管怎样,我试过了,效果很好,谢谢!