3

我正在 Android 上开发一个移动网站,其中有一个选择列表作为菜单。

选择列表位于视图区域之外,我想通过单击 div 来使用浏览器上的选项切换弹出窗口。

我已经尝试了数百万种方法来打开视图以选择一个值,但没有一个是成功的......经过一些研究后,我在stackoverflow上读到 .focus() 函数在 android 设备上被禁用。

我知道这段代码适用于IOS:

$(document).ready(function(){
    $("#navigation").click(function(){
        $("#mobileMenu").focus();
    });
});

使用以下html:

<select id="mobileMenu">
    <option value="link1" onclick='openMobileMenuLink' >link one</option>
    <option value="link2" onclick='openMobileMenuLink' >link two</option>
    <option value="link3" onclick='openMobileMenuLink' >link three</option>
</select>

有什么方法可以在不破坏代码的情况下打开 android 设备上的选项透视图(我正在 chrome 中测试)(在 IOS 上运行良好)。

4

2 回答 2

4

我终于找到了解决方案:

当点击 div 时,会使用 js 生成点击事件。

<div onclick="generateSelectDropDown()">

上面的 div 调用以下函数:

window.generateSelectDropDown = function () { 
    var dropdown = document.getElementById('mobileMenu');
    showDropdown(dropdown);
};  

showDropdown = function (element) {
    var event;
    event = document.createEvent('MouseEvents');
    event.initMouseEvent('mousedown', true, true, window);
    element.dispatchEvent(event);
};
于 2013-03-22T17:49:45.687 回答
-1

不确定这是否仍然适用于iOS,但它应该......

$(document).ready(function(){
    $("#navigation").click(function(){
        $("#mobileMenu").click();
    });
});
于 2013-02-07T17:21:51.273 回答