我正在创建一个小小的JavaScript游戏。当页面加载时,它应该在页面上显示Fancybox。
这是我的Fancybox jQuery:
$(document).ready(function() {
$('#test').fancybox({
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'showCloseButton' : false,
'overlayOpacity' : 1
}).click();
});
这是我的HTML:
<a id="test" href="#test2" style="display:none;">Test the Popup</a>
<div style="display:none;">
<div id="test2" style='padding:10px; background:#fff;width:550px;'>
<b style="color:#FF9C21;font-size:24px;">HTML Jeoprady</b><br>
<span style="font-size:15px;">
You think your good at HTML? Well test your skill here.<br>
Please know there is more to HTML than 2 tags ;)<br>
Are you ready?<br><br>
<b style="color:#FF9C21;font-size:24px;">Name:</b>
<input type="text" id="team1" />
</span>
<br><br>
<span id="start" onclick="loop();" style="cursor:pointer;color:#FF9C21;font-size:20px;">
<center>Start Game!</center></span>
</div>
</div>
我的所有激活onclick的FancyBox都会显示,但它会在打开后大约5秒自动关闭。
我有办法解决这个问题吗?
答案 0 :(得分:1)
而不是.click()你应该只使用.open()
编辑:傻我,没有.open()。我之前遇到点击程序化点击事件的问题。如果您尝试的方法导致问题,请尝试此$('#test').trigger('click')
或者使用手动呼叫
$.fancybox('html content here',{options})
答案 1 :(得分:0)
如果您进行了手动通话,则可以执行以下操作:
var theContent = $('#div-id').html();
$.fancybox(theContent, {
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'showCloseButton' : false,
'overlayOpacity' : 1
});
然后,#div-id
的内容将出现在手动调用中。
我希望有所帮助。