如果您在网页中使用 select HTML 元素,iOS 会显示一个自定义选择控件,该控件已针对使用手指作为输入设备选择列表中的项目进行了优化。
这就是我要询问的“自定义选择控件”(我将其称为“本机”控件),并且在引用的页面中有一张很好的图片,包括“上一个”、“下一个”和“完成”纽扣。
我有一个选择列表:
<select id="selected_item_selector">
<option value="1">first item</option>
<option value="2">second item</option>
<option value="#">Add a new item</option>
<select>
和 javascript 说:
$(function() {
var sel = $('#selected_item_selector');
sel.change(function(e) {
var selectedItemForm = $('#select_item_form'),
id = $(this).val(),
href = '/add-item.html';
if(id == '#') {
document.location.href = href;
}
/* do something with the id */
});
if(sel.val() == '#') {
/* never have the "add" option selected */
sel.val(0);
}
});
所以一切都按预期工作,代码没有问题!!!!
这是问题所在:当浏览器导航到新页面时,“自定义选择控件”保持打开状态,提示与当前浏览器中的页面无关的操作。
这是我想要的解决方案:告诉我如何在卸载页面或加载新页面时从我的 javascript 代码中关闭“自定义选择控件”(又名“本机”控件)。