是否可以通过程序触发移动设备's的本地选择弹出窗口
Is it possible to programmatically trigger a mobile device's native select popup?
当打开选择元素时,至少有些手机会显示原生弹出菜单,而不是默认下拉菜单。有没有一种方法可以在不使用select元素的情况下从Javascript手动触发选择弹出窗口?
我尝试过使用隐藏的select元素,并在需要用户进行选择时触发点击事件,但这似乎不起作用。
看起来确实有效的是使选择透明(opacity: 0
),并将其覆盖在应该触发选择弹出的元素的顶部。然而,这感觉很粗糙,并且需要不必要的代码来保留悬停/单击功能。
试试这个:
<html>
<head>
<style>
html, body
{
margin :0;
padding :0;
}
.hiddenElem
{
position :absolute;
top :-1000px;
left :-1000px;
}
</style>
</head>
<body>
<div class="hiddenElem">
<select name="selectField" id="selectField">
<option value="1">One</option>
<option value="2">Two</option>
</select>
</div>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
setTimeout(function()
{
var element=$("#selectField")[0], worked=false;
if(document.createEvent)
{
var e=document.createEvent("MouseEvents");
e.initMouseEvent("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
worked=element.dispatchEvent(e);
}
else if(element.fireEvent)
{
worked=element.fireEvent("onmousedown");
}
if(!worked)
{
alert("It didn't worked in your browser.");
}
}, 100);
</script>
</body>
</html>
参考:如何使用jquery 打开选择输入
相关文章:
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 如何在模式弹出窗口中使用引导程序日期和时间选择器
- 从子窗口到父窗口的Javascript弹出选择器
- 从js中的窗口选择中删除空白
- 打开'选择文件'窗口单击锚链接(跳过单击'选择文件'按钮)
- 传单:如何在弹出窗口中创建链接选择器
- 选择首次单击浏览器操作时打开的弹出窗口
- 当窗口不可见时选择/剪切/粘贴到
- ASP.NET 中未知数量的子窗口的最佳选择
- 如何在从代码后面显示之前,在弹出窗口中选择预先填充的下拉列表选项
- 无法检索从窗口.本地存储中选择输入值
- 保留动态创建的下拉列表's在事件窗口.history.back()上选择的值-JavaScript
- 使用Javascript单击选择按钮时,在另一个窗口上显示图像
- 从其他位置触发文件选择窗口
- 选择框导航:窗口打开页面加载而不是更改
- Javascript:选择窗口加载功能
- 选择窗口,不要选择文本区域
- 修复Firefox文件选择窗口从所有其他窗口后面打开
- 在一个大的选择窗口中搜索值:HTML、Javascript
- 当文件选择窗口被取消时,如何在html文件类型元素中自动选择先前上传的文件