我有一个环绕着我的元素的foreach。在这个元素中,我将href属性设置为#Sendbox,这是调用div-element的id。但是fancybox不起作用 如果我从li元素中删除id-attribute,它将按预期工作,但这对我来说没有解决方案,因为我需要id-attribute来获取其中的其他数据值。
这是我的代码:
HTML + PHP:
<ul>
<?php foreach($arrTags as $key => $value) { ?>
<li><a href="#SendBox" class="TheBox" id="setTag_<?php echo $value['userID']; ?>" data-tagid="<?php echo $value['tagID']; ?>"><?php echo $value['userName']; ?></a></li>
<?php } ?>
</ul>
<div id="SendBox" style="display:none"><h2>Box was sent..</h2></div>
这是我的fancybox代码:
$('[id^=setTag_]').click(function() {
$('.TheBox').click(function(){
$(".TheBox").fancybox({
width : 350,
height : 400,
});
});
});
我试图找到锻炼但仍然没有运气 也许有人知道解决方案吗?非常感谢。
答案 0 :(得分:0)
您的逻辑没有意义,因为您可以使用元素的ID(setTag_*
)或类(TheBox
)调用fancybox,否则会多余并且可能会产生意外结果。此外,您不需要.click()
方法,除非您想在手动模式下调用fancybox。
这些脚本中的任何一个都有效:
$(".TheBox").fancybox({
width: 350,
height: 400 //<-- No trial comma on the last option
});
......或
$('[id^=setTag_]').fancybox({
width: 350,
height: 400 //<-- No trial comma on the last option
});
... 是,fancybox支持通配符选择器。请参阅 JSFIDDLE