The problem is that iScroll cancels the default behavior of your select
tag (Not a very good implementation if you ask me).
This occurs in the _start()
function on line 195:
e.preventDefault();
If you comment that out you'll notice the select
tag works again.
But commenting it out means you've hacked the library which might break other desirable iScroll functionality. So here's a better workaround:
var selectField = document.getElementById('Field10');
selectField.addEventListener('touchstart' /*'mousedown'*/, function(e) {
e.stopPropagation();
}, false);
That code will allow the default behavior to occur, without propagating the event to iScroll where it screws everything up.
Since your JS is not inside any jQuery-like onReady()
event, you'll have to make sure to you put this code AFTER the HTML where your select
elements are defined.
Note that for mobile devices the event is touchstart
, but for your PC browser it will be mousedown
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…