我有一個有趣的複雜功能,我想了解,如果我有window.open作爲onclick事件的錨點,將根據需要打開一個新選項卡。如果onclick調用一個函數,該函數又會打開一個窗口。打開一個新選項卡,但當前選項卡也會獲取新的URL。window.open在函數中替換當前選項卡以及打開新選項卡
我可以證明它here它工作正常,當你點擊鏈接時,here URL也在結果區域打開!
謝謝 Symeon。
我有一個有趣的複雜功能,我想了解,如果我有window.open作爲onclick事件的錨點,將根據需要打開一個新選項卡。如果onclick調用一個函數,該函數又會打開一個窗口。打開一個新選項卡,但當前選項卡也會獲取新的URL。window.open在函數中替換當前選項卡以及打開新選項卡
我可以證明它here它工作正常,當你點擊鏈接時,here URL也在結果區域打開!
謝謝 Symeon。
您的第一條case
聲明正在下降。您需要添加一個break
:下面這是第一個匹配的將被執行的一個
switch (t) {
case 1:
window.open(url,"_blank");
break;
case 2:
window.location = url;
break;
}
沒有break
,每case
。
我也在第二個案例中增加了一個break
,僅僅是因爲它總是被認爲是良好的做法總是break
的情況。實際上,JSLint會將缺少的break
標記爲錯誤。
您需要break;
您的case
s。
在不工作的例子,你缺少的switch語句的break
:
function doclick(t, url) {
switch (t) {
case 1: window.open(url,"_blank"); break;
case 2: window.location = url; break;
}
return false;
}
只有break;
會給你你需要的結果。
謝謝 - 我不能相信我沒有發現那個!我已經更新了當然jsfiddle .... – 2012-04-18 15:46:10