<input id="txtTest" type="text"/>
如何用Jquery获取txtTest的offsetWidth的值?并且兼容各种浏览器。

解决方案 »

  1.   

    alert($("#txtTest").attr("offsetWidth"));
    ff 和ie获得到的值不同 。
      

  2.   

    不好意思,这中方式是不行的!简单的说,offsetWidth 不是input标记的有效属性值,所以这中方式是不正确的!
      

  3.   

    我查过Jquer API文档,没有这种方法
      

  4.   

    不好意思,看错了,是有这中方法的!但不知道这个方法获取的值是否和javaScript中的获取的offsetWidth值是否是一样的?
      

  5.   

    document.getElementById("test").offsetWidth;但此值在不同浏览器下可能不同
      

  6.   

    一般用offset和position这两个方法
      

  7.   

    还要请教各位高手,因为本人刚学Jquery,帮我讲解下在Jquery中offset和position这两个的区别?
      

  8.   

    offset()是相当于视口的偏移,而position()是相对于父级的
      

  9.   

    我用一下代码进行测试,但两个结果是不同的,怎么能说用$("#txtTest").offset().left获取的值是对的呢?
    $(document).ready(function()
    {
    test();
    });
    function test()
    {
     var m_Input=document.getElementById("txtTest");
     alert(Input.offsetWidth);  //值为153 
     alert($("#txtTest").offset().left); //值为258}
      

  10.   

    自己去看API。。jQuery的api做的这么好还各种问,你让学dojo的情何以堪啊。。
      

  11.   

    试试
    $("#txtTest").outerWidth(true)