一些快速的背景空事件監聽器:這好嗎?
我建立一個使用在一些地區HTML網頁視圖的iOS應用。我想確保這些頁面上的html按鈕看起來和感覺儘可能像iOS按鈕一樣。爲了達到這個目的,我想要一個點擊狀態,以便點擊時按下HTML按鈕。現在在HTML中這很容易。你只需設置一個樣式:active或:hover或其他。我其實已經定義了這一點。但是,在iOS中,這些州不會進行竊聽 - 至少通常是這樣。所以我的目標是寫一個腳本,在按鈕上添加一個類來改變它在ontouchstart上的外觀。
的問題
然而,事實證明,我沒有必要讓那麼複雜......純屬偶然,我跑用下面的代碼測試:
document.addEventListener('touchstart', function(event) {
console.log("test");
}, true);
我m漂亮的綠色與javascript & jQuery,所以我打算做的是檢查我的語法,並確保eventListener點擊按鈕時觸發。令我驚訝的是,按鈕的:在CSS激活狀態(以及:懸停狀態)。該代碼...解決了我的問題!
我的問題
因此,這裏是我的問題:上面的代碼合法嗎?我的意思是,這樣做不好嗎?就好像空的eventListener觸發了桌面瀏覽器已經提供的行爲。使用這種方法有什麼問題嗎?我是綠色的,但我不想挑起壞習慣。如果這是一種不好的代碼方式,我不想使用它。
感謝您的任何見解,你們可以給我這個!
你可以空事件偵聽器,如果你想,但我認爲的console.log()將給IE中出現js錯誤 – Huangism
空聽者沒有任何問題。但是每個聽衆都增加了一點你可能不應該關心的開銷。檢查'console'和'console.log'很重要,因爲除非調試控制檯打開(如Firebug或開發工具) - 它不基於瀏覽器,否則它們可能不可用。 – Ian
我關於保持代碼精益和意味。爲了本文的目的,我在代碼中留下了console.log命令來說明我的原意。之後,我刪除了它,只是將事件偵聽器完全清空。 –