直接写 Player 是一种很不规范的写法.
用 document.all.Player 是只适用于IE的写法.
建议你使用W3C标准写法: document.getElementById("Player")

解决方案 »

  1.   

    但是这样的话,
    1 网页的字节数就增加了.
    2 况且我听说document.all.的执行效率不高
    3 我自己原来的网页一直就用直接写的方法。什么问题都没有。
      (网上很多例子也都是直接写的),不信请参看Media Player的相关网页。
      

  2.   

    这些例子大多是不会去注意浏览器兼容问题的, 而在IE里加不加 document.all 都可行, 你若是换一种浏览器就会明白IE里的混乱与这些示例的不足了.
    1. 加这么几个字, 网页会大多少? 几KB?
    2. 用 document.getElementById() 效率最高, 用 document.all 还有一个是否为集合的判断
    3. 若你只是做做B/S项目而非做网站开发, 无所谓, 若你写代码比较认真严谨的话, 这么方面你是应该注意的.
      

  3.   

    非常感谢。
    1 我感觉每个function中都要加上document.getElementById();代码也很难看。
    2 我只用在ie浏览器中。因为要用media player
    3 我还是想知道为什么以前用的可以,现在就不行了。
      

  4.   

    1 我感觉每个function中都要加上document.getElementById();代码也很难看。
       var docall= document.getElementById()
         xx=docall("Player")
    2 我只用在ie浏览器中。因为要用media player
         不明白,要用到媒体的话可以用 EMBED , 
         好象 Firefox 也能支持某些媒体 object
    3 我还是想知道为什么以前用的可以,现在就不行了。
        可能是IE升级后把以前这些不规范的东西废了吧
      

  5.   

    to:
    不明白,要用到媒体的话可以用 EMBED , 
         好象 Firefox 也能支持某些媒体 objectembed支持流里面的脚本吗?to:
    可能是IE升级后把以前这些不规范的东西废了吧不是,因为我的以前的代码还能正常运行.
    可是稍作修改就不行了,具体是哪一句造成的我不清楚.
      

  6.   

    我以前做的网页在调用<object id="Player"对象时
    都不写document.all.Player.,而直接写Player.可是最近我修改了一些这些以前运行的好好的网页。
    可是发现必须写成document.all.Player.,直接写Player.就不行了。可是我又看不出到底是怎么回事。谁能告诉我。
    ----------------------------------------------------
    <div id=div1><object id="Player1" /></div>
    这种情况下,你用Player1.xxx就错了, 因为他包含在其它元素中.
    可以用 div1.Player1.xxx
    也可以用 document.all.item("Player1")
    还可以用 document.getElementById("Player1")当它不包含在其它元素中时,可以直接用 Player1.xxx而 document.all 则指页面中所有元素,包括子元素,所以可以取到