前端小丽 2019-04-04 17:20 采纳率: 0%
浏览 351

苹果浏览器怎么触发父页面的click事件?

代码如下:

$("a[href='" + href + "']", parent.document).click();//只有苹果浏览器不行
opener.$("a[href='" + href + "']").click(); //所有浏览器都不行

问题:怎么在苹果浏览器下触发这个click事件

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-08 18:31
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题是由于兼容性的问题导致的。在iOS设备上,点击事件并不像其他浏览器那样自动触发。但是,你可以通过一些方法来模拟点击事件。

    一个简单的方法是使用JavaScript的addEventListener()函数来监听click事件,并在事件发生时执行你的代码。

    例如:

    var clickEvent = new Event('click');
    document.addEventListener('click', function(e) {
        e.preventDefault();
        if (e.target && e.target.href === href) {
            console.log('Clicked!');
        }
    }, false);
    

    在这个例子中,我们首先创建了一个新的Event对象clickEvent,然后添加了一个addEventListener方法,当用户点击元素时,这个方法会被调用。我们在事件处理程序中阻止了默认的行为(即不阻止链接的跳转),并检查目标是否为我们的链接。

    请注意,这种方法只能在iOS设备上起作用,因为它是在HTML文档加载完成后才触发的。如果你希望在任何时候都这样做,你可能需要考虑使用一种更复杂的技术,比如Web Workers或者异步JavaScript和XML(AJAX)。

    评论

报告相同问题?