我有一个奇怪的问题,我必须在链接(按钮)上点击两次而不是一次激活灯箱事件,并且无法弄清楚为什么我的生活。
这是我的代码,这是页面的预览,如果你发现你必须在观看按钮上点击两次才能激活灯箱事件。
(链接已删除,因此Google未编入索引)
<script type="text/javascript">
var $j = jQuery.noConflict();
var src = '';
$j(function()
{
$j("span#btnclick").click(function(event)
{
event.preventDefault();
$j("a.watchbutton").nivoLightbox({
effect: 'fade',
afterShowLightbox: function()
{
src = $j('.nivo-lightbox-content > iframe').attr('src');
$j('.nivo-lightbox-content > iframe').attr('src', src +'?autoplay=1');
}
});
});
});
</script>
答案 0 :(得分:1)
这是因为您在click
事件中定义了灯箱功能。因此,当您第一次单击时,会定义灯箱功能。第二次它被重新划分,但在它工作之前,因为它已经被定义了。
解决方案是从click
事件中提取灯箱功能定义:
$j("span#btnclick").click(function(event){
event.preventDefault();
});
$j("a.watchbutton").nivoLightbox({
effect: 'fade',
afterShowLightbox: function()
{
src = $j('.nivo-lightbox-content > iframe').attr('src');
$j('.nivo-lightbox-content > iframe').attr('src', src +'?autoplay=1');
}
});