IE:无法获取属性'clientWidth'的值:object为null或undefined

时间:2012-07-25 15:53:57

标签: javascript jquery html internet-explorer dom

错误消息仅显示在IE上,但似乎没有解决此问题的方法。

我已将http-equiv="X-UA-Compatible"设为IE8,但仍无法正常使用。

我要做的是使用jQuery重新加载表的内容。但似乎jQuery的重新加载显然无法设置clientWidth,因为jQuery中没有该术语的对应部分。

<table style="" id="actionMap" class="top-table">

<table>的id属性适用于DOM,类适用于jQuery。

j(function() {
        j('#filter_workflows').change(function () {
            var workflow = j(this).val();
            var url = '<spring:url value="/actionMap" />' + '?filter_workflow=' + workflow;
            var savedWidth = document.getElementById("actionMap").clientWidth;
            j('table.top-table').load(url+' table.top-table > *');
            j('input[name=filter_workflow]').val(workflow);
            document.getElementById("actionMap").clientWidth = savedWidth;
        });
    });

原来clientWidth属性是只读的。

  document.getElementById("actionMap").clientWidth = savedWidth;

永远不会有用。

那么我们如何在jQuery重新加载表之后设置clientWidth属性?

由于

1 个答案:

答案 0 :(得分:0)

这有帮助吗?

http://api.jquery.com/width/

clientWidth可能是特定于客户端的(它可能是特定于客户端的,除了IE之外的所有内容都支持它)。

jQuery具有这些的包装函数,请参阅http://api.jquery.com/category/dimensions/http://api.jquery.com/category/offset/