【问题标题】:jQuery UI Dialog and IEjQuery UI 对话框和 IE
【发布时间】:2011-02-13 19:06:15
【问题描述】:

我正在为一个项目使用 jQuery UI Dialog,但在 IE8 上遇到了一些问题(尚未在 IE7 及更低版本上测试过,但在 Chorme 和 FF 上测试过)。

我在js中使用了这段代码:

var dialogObj = $("#dialog").dialog({autoOpen: false, title: id, modal: false, width: 600, height: 400});

对话框是通过 ajax 填充的。 在 IE8 中,标题显示不正确。它很窄,不显示标题的文字。

我在 IE 中还有另一个问题: 每当我按下显示对话框的元素时,我都会收到一条错误消息:

网页错误详情

用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.1;Trident/4.0;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.30729;Media Center PC 6.0 ; 平板电脑 2.0; InfoPath.3) 时间戳:2011 年 2 月 9 日星期三 11:27:22 UTC

消息:对方法或属性访问的意外调用。 线路:103 字符:460 代码:0 网址:http://localhost/js/jquery.js

在这一行:

return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},

char 460 从这里开始:

this.nodeType===1&&this.appendChild(a)})},

我使用 jQuery v1.4.2

如果我再次按下该元素,它会显示对话框。

显示对话框的元素是这样的:

<td class="alignText"><a onclick="showDialog('<?php echo $r->Id; ?>')"><?php echo $r->Id; ?></a></td>

请注意,我的页面已验证。

感谢您的帮助!

【问题讨论】:

  • 使用{'title':'helllo world'} 的好习惯是仔细检查。 jquery 还旨在消除使用“onclick”属性的需要,并且您的代码到处都是。 Internet Explorer 也禁用了本地机器上的 javascript,这可能是原因
  • domManip(arguments,true,function(a){this.nodeType===1&amp;&amp;this.appendChild(a)})}, 顺便说一句,这行看起来不对你最后有一个},但没有{

标签: jquery jquery-ui


【解决方案1】:

显然我的 jQuery 文件有缺陷。再次下载文件后一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    相关资源
    最近更新 更多