在我的工作中,我更改了 fancybox 的对话框,一切都很顺利,即使有一些小问题,例如让它在页面加载时运行,但没有什么是我无法管理的。
但是现在,我面临着一个巨大的障碍:
IE6 和 IE7 未驯服的行为。我需要更改 fancybox 将要显示的位置的 url。除了添加内容,我在文档中找不到任何内容,但没有找到 id。所以我的问题是:我哪里错了?
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="http://fancybox.net/js/fancybox/jquery.fancybox-1.3.0.css" media="screen" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.1.min.js"></script>
<script type="text/javascript" src="http://fancybox.net/js/fancybox/jquery.easing-1.3.pack.js"></script>
<script type="text/javascript" src="http://fancybox.net/js/fancybox/jquery.mousewheel-3.0.2.pack.js"></script>
<script type="text/javascript" src="http://fancybox.net/js/fancybox/jquery.fancybox-1.3.0.pack.js"></script>
<script>
$(document).ready(function() {
jQuery.fn.cornyBox = function(selector) {
if (selector) { this.attr('href', selector); }
$(this).fancybox();
};
//$('#aAlert').cornyBox();
$('#aAlert').cornyBox('#dvAlert2');
});
</script>
</head>
<body>
<div id="alertHolder">
<a id="aAlert" href="#dvAlert1" >hit me</a>
<div id="dvAlert1" class='alert'>
something
</div>
<div id="dvAlert2" class='alert'>
something else
</div>
</div>
</body>
</html>
如果我使用 $('#aAlert').cornyBox();
我没有问题,因为显然我没有在链接上设置新的 href。
它适用于 IE8、Firefox 和 Chrome。在 IE6、IE7 中,不是。
最佳答案
我在 IE7 显示内联 html 内容时遇到了类似的问题。它正在显示我没有在 href 中选择的 body 内容。将类型参数设置为内联似乎可以解决问题。
$('a.fancybox').fancybox({
'type':'inline',
});
关于javascript - 在 ie 7 和 6 上更改 href 时出现 Fancybox 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238930/