Javascript chrome和带有querySelectorAll的iPad出现问题

Javascript chrome和带有querySelectorAll的iPad出现问题,javascript,ios,google-chrome,Javascript,Ios,Google Chrome,我有以下代码: var showonlyswitch = document.querySelectorAll('#showonlyswitch > optgroup > option'); for (var y = 0; y<showonlyswitch.length; y++) { showonlyswitch[y].addEventListener('click', showonlyproducts); } 首先,我认为window.location.href会

我有以下代码:

var showonlyswitch = document.querySelectorAll('#showonlyswitch > optgroup > option');
for (var y = 0; y<showonlyswitch.length; y++) {
     showonlyswitch[y].addEventListener('click', showonlyproducts);
}
首先,我认为
window.location.href
会引起一些问题,但我尝试
console.log
一些胡言乱语,它在firefox中有效,但在chrome中无效

我也试着改变

var showonlyswitch = document.querySelectorAll('#showonlyswitch > optgroup > option');

但这(显然)在任何浏览器中都不起作用

select在某些OPTGROUP中是分开的,函数应该在单击某个选项时触发,因为更改事件对于这种情况是不够的,因为有可能在未触发更改事件(无更改)的情况下选择解决方案

正如我所说,代码在firefox中运行得非常好,因此不应该有任何打字错误或其他问题(通常…),chrome的控制台中没有错误


在这里,您会想到任何已知的问题吗?

将单击事件绑定到
选项
元素是不可靠的。改用
onchange
事件:

var showonlyswitch = document.querySelector('#showonlyswitch');
showonlyswitch.addEventListener('change', showonlyproducts);
至于这部分,

对于这种情况,更改事件是不够的,因为有可能在未触发更改事件的情况下选择解决方案

#showonlyswitch
上尝试tom bind click事件,选择元素本身,而不是
选项
元素

var showonlyswitch = document.querySelectorAll('#showonlyswitch > option');
var showonlyswitch = document.querySelector('#showonlyswitch');
showonlyswitch.addEventListener('change', showonlyproducts);