我一直试图让Fancybox 2与Firefox 22.0一起使用,但无济于事。我用铬跑了这个,结果很好。我降级了jQuery版本,将https放在链接上,通过Firebug运行,没有任何效果。有任何想法吗?
Javascript:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script src="fancybox/jquery.fancybox.js?v=2.1.5"></script>
<script>
$(".fancybox").fancybox({
openEffect : 'none',
closeEffect : 'none',
afterClose : function() {
slideMove = true;
},
beforeLoad : function() {
event.preventDefault();
slideMove = false;
}
});
</script>
HTML:
<a class="fancybox" href="images/screenshots/flower-big.jpg" title="The Cupertino Florist"><img src="images/screenshots/flower-small.jpg" alt=""></a>
答案 0 :(得分:0)
你的javascript应该看起来像:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script src="fancybox/jquery.fancybox.js?v=2.1.5"></script>
<script>
$(document).ready(function (){
$(".fancybox").fancybox({
openEffect: 'none',
closeEffect: 'none',
afterClose: function () {
slideMove = true;
},
beforeLoad: function () {
event.preventDefault(); //<--- this is breaking your code in Firefox
slideMove = false;
}
});
});
</script>
...假设您有HTML5 DOCTYPE
,否则将type="text/javascript"
属性添加到script
代码
编辑:嗯,这不是Firefox 22,我忽略了代码中的一些行:event.preventDefault();
回调中的beforeLoad
在Firefox中破坏了您的代码。此 JSFIDDLE 不起作用, THIS 如果已注释,则无效。