我在 IE7 中运行一段使用 jquery 和 2 个 jquery 插件的代码时遇到了这个问题。该代码适用于 FF3 和 Chrome。
完整的错误是:
Line: 33
Char: 6
Error: bg is null or not an object
Code: 0
URL: http://localhost/index2.html
但是第 33 行是一个空行。
我正在使用 2 个插件:可拖动和缩放。无论我对代码做什么,总是第 33 行有问题。我通过查看源代码检查源代码是否有更新,但我觉得这可能是在骗我。
<body>
<div id="zoom" class="zoom"></div>
<div id="draggable" class="main_internal"><img src="tiles/mapSpain-smaller.jpg" alt=""></div>
<script type="text/javascript">
$(document).ready(function() {
$('#draggable').drag();
$('#zoom').zoom({target_div:"draggable", zoom_images:new Array('tiles/mapSpain-smaller.jpg', 'tiles/mapSpain.jpg') });
});
</script>
</body>
基本上我想做的是用 jQuery 重新创建 Pragmatic Ajax map 演示。
问题似乎是这段代码的第二行造成的:
bg = $(this).css('background-position');
if(bg.indexOf('%')>1){
它似乎试图选择 #draggable
的 background-position 属性但没有找到它?手动添加 background-position: 0 0;
没有解决问题。关于如何解决这个问题的任何想法?
我尝试使用 MS Script Debugger,但这几乎没用。无法检查变量或其他任何内容。
最佳答案
在 Interweb 上的更多挖掘揭示了答案:IE 不理解选择器 background-position
。它理解非标准的 background-position-x
和 background-position-y
。
目前正在一起破解一些东西来解决它。
雷蒙德,不错。
关于javascript - 修复 IE 中的背景位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/594870/