我正在收到对话框(操作已中止)
此代码有什么问题?
<script type="text/javascript">
$(document).ready(function() {
$('.demo').popupWindow({
centerScreen:'1'
});
});
</script>
答案 0 :(得分:3)
当IE尝试在IE渲染引擎完成处理之前尝试修改DOM(HTML页面的结构)时,IE中会出现“操作已中止”消息。结果基本上是渲染引擎崩溃,你被从页面带走到“取消操作”错误页面。
广泛发布的解决方案是等待DOM加载,使用FastInit,原型$(document).observe('dom:loaded')
或jQuery $(document).ready
等工具。但您已经在使用$(document).ready
。所以你的代码应该可以工作。
我在这里问了基本相同的问题:IE7 "Operation Aborted" even with FastInit?
我接受了@ NickFitz的答案,因为不接受答案导致我的接受率下降,他提供了最有用的信息。最终我所做的是将我的脚本移到</body>
标签之前,这似乎解决了这个问题。试试看,看看它是否适合你。如果您无法实际移动脚本,请将其包装在函数中并调用该函数。即:
<script type="text/javascript">
var showDemoPopupWindow = function() {
$('.demo').popupWindow({
centerScreen:'1'
});
}
</script>
...
</head>
<body>
...
...
<script type="text/javascript">
$(document).ready(showDemoPopupWindow);
</script>
</body>
</html>
答案 1 :(得分:2)
以下是一些描述此问题的链接。它特定于IE处理DOM操作。
http://support.microsoft.com/kb/927917
和
http://www.clientcide.com/code-snippets/manipulating-the-dom/ie-and-operation-aborted/