选择框导航:窗口打开页面加载而不是更改

Select Box Navigation: widow opening on page load rather than change

本文关键字:加载 导航 窗口 选择      更新时间:2023-11-07

我有一个带有一些选项的选择框。我想允许用户选择一个选项,然后被带到存储在该选项的value属性中的URL。然而,我的脚本在页面加载时不断打开新窗口,而不是在更改时。为什么?帮助

function selectBoxNav() {
"use strict";
var mySelectBox = document.getElementById('mySelectBox');
var myOption = mySelectBox.options[mySelectBox.selectedIndex];
var myURL = myOption.value;
function newWindow() {
  window.open(myURL);
}
mySelectBox.addEventListener('change', newWindow(), false);
}
window.addEventListener('DOMContentLoaded', selectBoxNav(), false);

您需要将函数传递给addEventListener(),但您需要调用它并传递它的返回值。newWindow()调用该函数。要传递它,您应该删除括号:mySelectBox.addEventListener('change', newWindow, false);