kra*_*626 9 html javascript iframe jquery
首先,让我说我对完全采用不同方法的想法持开放态度.
我有和iframe这样:
<div id="testloadlogin">
<iframe src="../security/login.aspx" width="400" height="500"
scrolling="auto" frameborder="1">
[Your user agent does not support frames or is currently configured
not to display frames. However, you may visit
<a href="../security/login.aspx">the related document.</a>]
</iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
使用iframe加载的页面有一个名为loginInnerBox的div.我只想显示loginInnerBox及其中的所有内容.
关于如何做到这一点的任何想法?我正在考虑使用Jquery或某种类型的javascript删除iframe加载的页面上的所有其他内容,但不确定如何访问它...
为了清楚起见,我希望iframe之外的所有内容都保持不变.我想要相当于说$.('testloadlogin').load('../ security/login.aspx'#loginInnerBox),它只是获取loginInnerBox的html并将其放在testloadlogin div中.但是,我需要iframe支持的其他页面的后端处理,但不需要Jquery加载.
iframe加载的页面的标记是
<body>
<div>
</div>.......
<div class="AspNet-Login" id="ctl00_CLPMainContent_Login1">
<div id="loginInnerBox">
<div id="loginCreds">
<table>
</table>
</div>
</div>
</div>
<div>
</div>....
</body>
Run Code Online (Sandbox Code Playgroud)
您需要更多信息吗?
我试过这个,它没有效果:
<div class="ui-corner-all" id="RefRes">
<div id="testloadlogin">
<iframe onload="javascript:loadlogin()" id="loginiframe" src="../security/login.aspx"
scrolling="auto" frameborder="1">
[Your user agent does not support frames or is currently configured
not to display frames. However, you may visit
<a href="../security/login.aspx">the related document.</a>]
</iframe>
</div>
</div>
<script type="text/javascript">
function loadlogin() {
$('<body>*', this.contentWindow.document).not('#ctl00_CLPMainContent_Login1').hide();
}
</script>
Run Code Online (Sandbox Code Playgroud)
使用jQuery,您不仅可以加载URL的内容,还可以加载该URL中的特定CSS选择器.这将是一个更清洁的方法.就像这样.
$("#area").load("something.html #content");
Run Code Online (Sandbox Code Playgroud)
通过CSS技巧
$("iframe").contents().find("*:not(#loginInnerBox)").remove();
Run Code Online (Sandbox Code Playgroud)
请注意,这仅适用于从同一域加载的 iframe(同源策略)
编辑loginInnerBox
:这可能也会删除孩子。在这种情况下,您可以尝试先克隆它:
var iframe = $("iframe").contents(),
loginBox = iframe.find("#loginInnerBox").clone();
iframe.find("*").remove();
iframe.append(loginBox);
Run Code Online (Sandbox Code Playgroud)
类似的东西..
归档时间: |
|
查看次数: |
25140 次 |
最近记录: |