我有这个jquery
$('#1').fancybox({
'width': '50%',
'height': '90%',
'autoDimensions': false,
'type': 'ajax',
'ajax': {
dataFilter: function(data) {
return $(data).find('.news:first')[0];
}
}
});
$('#2').fancybox({
'width': '50%',
'height': '90%',
'autoDimensions': false,
'type': 'ajax',
'ajax': {
dataFilter: function(data) {
return $(data).find('.news:eq(1)')[0];
}
}
});
是否有可能将这些2合并为1
日Thnx
答案 0 :(得分:0)
喜欢这样吗?
$('#1, #2').fancybox({
'width': '50%',
'height': '90%',
'autoDimensions': false,
'type': 'ajax',
'ajax': {
dataFilter: function(data) {
return $(data).find('.news:eq(1)')[0];
}
}
});
您可以像在CSS中一样使用逗号分隔选择器。
修改强>
:first
只是:eq(0)
的简写,因此您的设置之间唯一的区别就是选择器。引自jQuery docs:
:第一个伪类是等价的 to:eq(0)。
答案 1 :(得分:0)
你最大的问题是dataFilter
,但你可以尝试这样的事情:
$('#1, #2').each(function(i, el) {
$(el).fancybox({
'width': '50%',
'height': '90%',
'autoDimensions': false,
'type': 'ajax',
'ajax': {
dataFilter: function(data) {
return $(data).find('.news:eq(' + i + ')')[0];
}
}
});
});