首頁 > web前端 > js教程 > JavaScript中偽協議 javascript:使用探討_javascript技巧

JavaScript中偽協議 javascript:使用探討_javascript技巧

WBOY
發布: 2016-05-16 16:41:48
原創
1470 人瀏覽過

將javascript程式碼加入客戶端的方法是把它放置在偽協定說明符javascript:後的URL中。這個特殊的協定類型宣告了URL的主體是任意的javascript程式碼,它由javascript的解譯器運作。如果javascript:URL中的javascript程式碼含有多個語句,則必須使用分號將這些語句分隔開。這樣的URL如下圖:

javascript:var now = new Date(); "<h1>The time is:</h1>" + now;
登入後複製

當瀏覽器裝載了這樣的URL時,它將執行這個URL中包含的javascript程式碼,並顯示最後一條javascript語句的字串值作為新文件的內容。這個字串值可以含有HTML標記,並且被格式化,其顯示與其他裝載進瀏覽器的文件完全相同。

javascript URL也可以含有隻執行動作,但不傳回值的javascript語句。例如:

javascript:alert("hello world!")
登入後複製

裝載了這種URL時,瀏覽器僅執行其中的javascript程式碼,但由於沒有作為新文件來顯示的值,因此它不會改變目前顯示的文件。

通常我們想用javascript:URL執行某些不改變目前顯示的文檔的javascript程式碼。要做到這一點,必須確保URL中的最後一條語句沒有回傳值。一種方法是用void運算子明確地把回傳值指定為underfined,只需要在javascript:URL的結尾使用語句void 0;即可。例如:下面的URL將開啟一個新的空瀏覽器窗口,而不改變目前視窗的內容:

javascript:window.open("about:blank"); void 0;
登入後複製

如果這個URL沒有void運算符,window.open()方法的回傳值將會轉換成字串並被顯示出來,目前視窗將會被如下所示的文件覆寫。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板