如何在动态加载的iframe中单击按钮

How to make a click over a button inside a dynamically loaded iframe

本文关键字:iframe 单击 按钮 加载 动态      更新时间:2023-09-26

标题说明了一切。我正在使用一个框架,我所知道的唯一的事情是他们的src属性的一部分。到目前为止,我可以通过(已知的)id:

到达目标元素(锚)。
var f = $('iframe[src^="url"]', newTabBrowser.contentDocument);
if ( ! f.length)
    return;
var b = f.contents().find('#button'); 
if ( ! b.length)
    return;
此时,我已经将所需的锚元素放入jQuery变量b中,但是我不能单击它。锚点如下:
<a href="javascript:void(0);" id="button" role="button" tabindex="0"></a>

I have try:

b.click();

:

simulateClick(b);
function simulateClick(elm) {
    var evt = document.createEvent("MouseEvents");
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    var canceled = !elm.dispatchEvent(evt);
    if(canceled) {
        return false;
    } else {
        return true;
    }
} 

两者都不行。任何关于如何继续或其他技术尝试的想法?

OBS:这是FF插件的一部分。这就是为什么我使用newTabBrowser.contentDocument

这个对你有用吗?

<>之前$(文档)时函数(){var frame = $('#iframeID').get(0).contentDocument;$('#button', frame).click(function() {alert("点击我. . ! ");});});之前

希望能有所帮助。