我試圖在用戶點擊頁面上的任何位置時打開一個新選項卡。我只希望這種情況發生一次,因爲這會讓他們很難在我的網站上瀏覽。這裏是我的代碼:Javascript:onclick window.open不止一次發生
document.onclick = function() {
window.open('http://example.com');
};
我的問題就像我說的,每次用戶點擊時都會發生。我怎樣才能讓它只發生一次?
謝謝!
我試圖在用戶點擊頁面上的任何位置時打開一個新選項卡。我只希望這種情況發生一次,因爲這會讓他們很難在我的網站上瀏覽。這裏是我的代碼:Javascript:onclick window.open不止一次發生
document.onclick = function() {
window.open('http://example.com');
};
我的問題就像我說的,每次用戶點擊時都會發生。我怎樣才能讓它只發生一次?
謝謝!
你可以簡單地保持計數!
<script type="text/javascript">
var count=0;
document.onclick=function()
{
if(count==0){
window.open('http://example.com');
}
++count;
}
</script>
這就是我一直在尋找的!謝謝! –
歡迎您:) –
只是刪除onclick
應該足夠:
document.onclick = function() {
window.open('http://example.com');
document.onclick = null;
};
演示:
document.onclick=function() {
alert('only show once!');
// Unset the onclick function.
document.onclick = null;
}
如果你可以使用jQuery:
$(document).one('click', function() {
window.open('your-url')
});
您能否解釋_why_這是否有效?謝謝! – Johannes
http://api.jquery.com/one/ –
的窗口
window.open('http://example.com','_test');
我認爲這是正確的答案,因爲其他答案沒有考慮到用戶可能已經關閉了彈出窗口(意外)並且想要再次打開它。 – kay
使用標誌添加一個名字!當點擊第一次執行時更改爲false – user1977204
如果用戶不小心關閉了彈出窗口並想重新打開它,該怎麼辦? – kay
試試這個window.open('http://example.com','_test'); –