Javascript-Mozilla和IE中的一個(gè)函數(shù)直接量的問題
更新時(shí)間:2007年01月09日 00:00:00 作者:
一般情況下,我們?cè)贘S中用函數(shù)直接量來命名一個(gè)簡單的函數(shù)。
<script type="text/javascript">
var func=function(s){window.alert(s)};
func("never-online")
</script>
這在IE或者M(jìn)ozilla中也是合法的(ECMA標(biāo)準(zhǔn)中有函數(shù)直接量的定義)。
但是IE中還有另外一種更簡單的命名方式可以簡化我們的代碼:
<div id="demo">http://blog.never-online.net</div>
<script type="text/javascript">
var $=document.getElementById;
alert($("demo").innerHTML);
</script>
而這在Mozilla中沒有報(bào)語法錯(cuò)誤,而是拋出了一個(gè)異常, 操作符非法:
下面代碼是捕獲Mozilla拋出的異常并打印出來
<div id="demo">http://blog.never-online.net</div>
<script type="text/javascript">
var $=document.getElementById;
try {
alert($("demo").innerHTML);
} catch(ex) { document.write(ex)}
</script>
異常內(nèi)容為:
[Exception... "Illegal operation on WrappedNative prototype object" nsresult: "0x8057000c (NS_ERROR_XPC_BAD_OP_ON_WN_PROTO)" location: "JS frame :: file:///C:/Documents%20and%20Settings/Administrator/Local%20Settings/Temp/non4A.htm :: :: line 22" data: no]
現(xiàn)在還不知道能不能在Mozilla的config中設(shè)置,總之寫代碼的時(shí)候要注意.
我在google上搜索 getElementById 0x8057000c 關(guān)鍵字,還是有很多類似的情況,比如
http://groups.google.co.uk/group/comp.lang.javascript/browse_thread/thread/65a1a23f5dd7c9ad/d264d04d9d768b28?tvc=2#d264d04d9d768b28
沒有更好的解決辦法,但是可以變通,比這樣寫
<div id="foo"></div>
<script>
document.$ = document.getElementById;
alert(document.$("foo").innerHTML);
</script>
因?yàn)閖s可以動(dòng)態(tài)的給對(duì)象增加屬性和方法,上面的例子在ie和moz中測試都可以通過.
<script type="text/javascript">
var func=function(s){window.alert(s)};
func("never-online")
</script>
這在IE或者M(jìn)ozilla中也是合法的(ECMA標(biāo)準(zhǔn)中有函數(shù)直接量的定義)。
但是IE中還有另外一種更簡單的命名方式可以簡化我們的代碼:
<div id="demo">http://blog.never-online.net</div>
<script type="text/javascript">
var $=document.getElementById;
alert($("demo").innerHTML);
</script>
而這在Mozilla中沒有報(bào)語法錯(cuò)誤,而是拋出了一個(gè)異常, 操作符非法:
下面代碼是捕獲Mozilla拋出的異常并打印出來
<div id="demo">http://blog.never-online.net</div>
<script type="text/javascript">
var $=document.getElementById;
try {
alert($("demo").innerHTML);
} catch(ex) { document.write(ex)}
</script>
異常內(nèi)容為:
[Exception... "Illegal operation on WrappedNative prototype object" nsresult: "0x8057000c (NS_ERROR_XPC_BAD_OP_ON_WN_PROTO)" location: "JS frame :: file:///C:/Documents%20and%20Settings/Administrator/Local%20Settings/Temp/non4A.htm :: :: line 22" data: no]
現(xiàn)在還不知道能不能在Mozilla的config中設(shè)置,總之寫代碼的時(shí)候要注意.
我在google上搜索 getElementById 0x8057000c 關(guān)鍵字,還是有很多類似的情況,比如
http://groups.google.co.uk/group/comp.lang.javascript/browse_thread/thread/65a1a23f5dd7c9ad/d264d04d9d768b28?tvc=2#d264d04d9d768b28
沒有更好的解決辦法,但是可以變通,比這樣寫
<div id="foo"></div>
<script>
document.$ = document.getElementById;
alert(document.$("foo").innerHTML);
</script>
因?yàn)閖s可以動(dòng)態(tài)的給對(duì)象增加屬性和方法,上面的例子在ie和moz中測試都可以通過.
相關(guān)文章
js 點(diǎn)擊按鈕彈出另一頁,選擇值后,返回到當(dāng)前頁
js 點(diǎn)擊按鈕彈出另一頁,選擇值后,返回到當(dāng)前頁,其實(shí)主要用于cms系統(tǒng)中,相關(guān)文章的搜索,要在已上傳目錄中選擇一些圖片等。2010-05-05Webpack-cli安裝成功后查看webpack -v報(bào)錯(cuò)案例詳解
這篇文章主要介紹了Webpack-cli安裝成功后查看webpack -v報(bào)錯(cuò)案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-09-09