關於彈出窗口
應該只在絕對必要情況下才使用彈出窗口,因爲這將牽涉到網頁的可訪問性問題,例如,用戶使用的屏幕讀取軟件無法向用戶說明彈出了窗口。因此如果網頁上的某個鏈接將彈出窗口,最好在這個鏈接本身的文字中予以說明。
JavaScript使用window對象的open()方法來創建新的瀏覽器窗口。這個方法有三個參數
window.open(url,name,features)
三個參數均爲可選,
第一個參數是想在新窗口裏打開的網頁的url 地址,如果省略這個參數,屏幕上將會彈出一個空白的瀏覽器窗口。
第二個參數是新窗口的名字,可以在代碼裏通過這個名字與新窗口進行通信。
最後一個參數是一個以逗號分隔的字符串,其內容是新窗口的各種屬性。這些屬性包括新窗口的尺寸(寬度和高度)以及新窗口被啓用或禁用的各種瀏覽功能(工具條,菜單條,初始顯示位置,等等)。對於這個參數應該掌握以下原則:新窗口的瀏覽功能要少而精。
window.open("http://baidu.com","新的窗口","width=320px,height=480");
"javascript" 僞協議 在HTML文檔裏通過javascript 僞協議 調用JavaScript代碼的做法非常不好
<a href="javascript:pop()" title="The Famous clock" >點擊執行pop()函數</a>
<a href="#" onclick="pop('http://baidu.com'); return false;">例子</a>
因爲上面這條HTML指令裏使用了return false; 語句,這個鏈接不會真正的打開。‘#’ 符號是一個僅供文檔內部使用的鏈接符號(單就這條指令而言,“#”是未指向任何目標的內部鏈接)。在某些瀏覽器裏,“#”鏈接指向當前文檔開頭,把 href 屬性的值設爲 “#” 只是爲了創建一個空鏈接。實際工作全部由onclick 屬性負責完成。
這種做法也不行,一旦用戶禁用了瀏覽器的JavaScript功能,這樣的鏈接將毫無用處,
分離JavaScript
一般來說,根據HTTP規範,瀏覽器每次從同一個域名中最多隻能同時下載兩個文件。而在下載腳本期間,瀏覽器不會下載其他任何文件,即使是來自不同域名的文件也不會下載,所有其他資源都要等腳本加載完畢之後才能下載。
把<script>標籤放在文檔的末尾,</body>標記之前就可以讓頁面變得更快,
加快加載速度,還可以使用工具壓縮腳本。
代碼壓縮工具,
1)Uglify http://lisperator.net/uglifyjs/
2)雅虎的 YUI Compressor http://developer.yahoo.com/yui/compressor/
3)谷歌的 Closure Compiler https://developers.google.com/closure/compiler/