页面加载后我立即加载Fancybox。在FF中工作正常,但它在IE中不起作用,我不确定为什么。当页面加载时,我在IE中没有错误。它只是不起作用。
Fancybox脚本
<script type="text/javascript" >
var $j = jQuery.noConflict();
$j(document).ready(function(){
Engine.Initialize(); //Not Fancybox - Loads different Script
$j("#start").fancybox({
'padding' : 0
});
});
</script>
Fancybox的HTML
<div class="hide">
<a href="#welcome" id="start"></a>
<img src="/Images/skin/spacer1x1.png" onload="$j('#start').trigger('click');" />
<img src="/Images/start/start.png" alt="PLEASE VIEW PAGE WITH IMAGES ON" border="0" usemap="#welcomeMap" id="welcome" style="width:700px; height:600px;" />
<map name="welcomeMap" id="welcomeMap">
<area shape="rect" coords="31,505,347,538" href="/examples/month-1/" />
<area shape="rect" coords="512,506,660,542" href="javascript:$j.fancybox.close();" alt="Close" />
</map>
</div>
不确定为什么它在IE中不起作用。 onload是否“触发”点击以启动Fancybox?
感谢您的帮助!
答案 0 :(得分:3)
我认为在IE中它试图在点击锚点时重定向到href。你能试试吗?
$j("#start").click(function(e){
e.preventDefault();
$j(this.href).fancybox({
'padding' : 0
});
});
答案 1 :(得分:2)
在我的项目中,我使用以下代码:
<script>
$(document).ready(function () {
$("#status-link").fancybox(
{ 'modal': true }
);
$("#status-link").trigger('click');
});
</script>
<a id="status-link" href="test.aspx" style="visibility: hidden"</a>
在IE7 / 8中为我工作。你可以尝试这样的事情。