zoukankan      html  css  js  c++  java
  • 获取iframe内的元素

      $("#iframeID").contents().find("#index_p")
    

      2获取父窗体的值

    $('#father', parent.document).val()
    

      3 调用 iframe 内的方法

      content_iframe.window.test(); //  content_iframe  iframe的 name

    4.js

    var a=document.getElementById('content_iframe').contentWindow.document.getElementById('index_audio')
    var b=document.getElementById('content_iframe').contentWindow.document.getElementById('index_video')

    5:

       最近操作iframe页面元素比较多。涉及到在子页面里控制父页面元素的显示,使用parent.document.getElementById("filterToFloders")获取父页面里id为filterToFloders的元素,或者是从顶层window下找到iframe页面元素的操作-window.parent.frames["setFilterFrame"].document.getElementById("targetFloder"),获取元素。但是现在页面里多半是使用jQuery来获取DOM元素,这样混杂着原生js获取DOM元素的操作,让代码整体看起来不伦不类。后来才发现jQuery选择器本身还可以带一个参数,传递选择的范围的,$("元素标识","元素所在范围")。所让代码变得简洁很多。而且风格统一。

    如下对等操作:

    javascript----------------------------------------------------------------------------jQuery

    parent.document.getElementById("filterToFloders")-----------------------------------$("#filterToFloders",parent.document) //子页面获取iframe父页面的DOM

    window.parent.frames["setFilterFrame"].document.getElementById("targetFloder")----$("#targetFloder",window.parent.frames["setFilterFrame"].document)//子页面获取父页面里的其他iframe子页面里的DOM

    window.frames["iframeChild"].document.getElementById("floader")------------------$("#floader",window.frames["iframeChild"].document)//父页面获取子页面的DOM元素

    除此之前还有另一种方法:$(window.frames["iframeChild"].document).find("#floader")(这种方法看到的,还没实际验证。)

    另外可以先用jQuery选中目标父页面或者是目标子页面,在再这页面上进行下一层级DOM元素的寻找。

    父页面获取子页面元素:

    javascript:window.frames["iframeChild"].document    //假如iframe的id为iframeChild

    jQuery:$(window.frames["iframeChild"].document)    //假如iframe的id为iframeChild

    接着获取子页面元素:

    $(window.frames["iframeChild"].document).find("#floader")

    $("#floader",window.frames["iframeChild"].document)

    子页面获取父页面元素雷同。关键是获取要找的页面就行。

  • 相关阅读:
    [BJOI2019] 光线
    C# 从零开始写 SharpDx 应用 笔刷
    BAT 脚本判断当前系统是 x86 还是 x64 系统
    BAT 脚本判断当前系统是 x86 还是 x64 系统
    win2d 通过 CanvasActiveLayer 画出透明度和裁剪
    win2d 通过 CanvasActiveLayer 画出透明度和裁剪
    PowerShell 拿到显卡信息
    PowerShell 拿到显卡信息
    win10 uwp 如何使用DataTemplate
    win10 uwp 如何使用DataTemplate
  • 原文地址:https://www.cnblogs.com/lgjc/p/6013453.html
Copyright © 2011-2022 走看看