我有一個選擇框用於導航到「更改」事件的新頁面並記錄一些分析。我想要觸發兩個事件處理程序,以便兩個處理程序都觸發「更改」而不是僅分配給onchange的最後一個功能。我只需要知道我需要使用//佔位符文本放入函數(),以便在「更改」事件中觸發這兩個事件。我想要的答案是簡單的ole JavaScript而不是jQuery。謝謝:)下面的代碼:在「更改」事件上觸發多個addEventListeners
的Javascript
樹挑戰: 「我們已經得到了這是我們用來導航到一個新的頁面上的一個選擇框‘改變’事件,並記錄了一些分析,我們想要的。兩個事件處理程序觸發,修復第14行和第15行,以便兩個處理程序觸發「更改」而不是僅分配給onchange的最後一個功能。「
//Select select box
var navigationSelect = document.getElementById("nav");
//Navigate to URL when select box is changed
var navigateToValue = function() {
window.location = this.value;
}
//Send analytics data
var sendAnalytics = function() {
//Placeholder
}
navigationSelect.onchange = navigateToValue;
navigationSelect.onchange = sendAnalytics;
HTML
<!DOCTYPE html>
<html>
<body>
<select id="nav">
<option value="index.html">Home</option>
<option value="about.html">About</option>
</select>
<h1>About</h1>
<script src="app.js"></script>
</body>
</html>
傑森嗨,你能告訴我們你已經試圖把在'sendAnalytics'功能,爲什麼那不起作用? – Roberto 2014-09-02 23:00:46
我不認爲你應該填寫佔位符。挑戰說只是修復14和15行。 – guest 2014-09-02 23:31:43
是的:)你是100%正確的。一旦我離開佔位符代碼,它就可以工作了。大聲笑 – 2014-09-02 23:39:56