jquery - jQuery 无法修改通过 src 加载的 iframe 内容的子 dom
问题描述
我试图从 iframe 中加载的页面中修改(特别是删除)DOM 元素。我已经看到这个问题被问了很多次,但我根本没有做对。这是一个跨站点,所以不能使用 jQuery AJAX。iFrame 加载正常,但在使用 jQuery 加载子 dom 后,我无法访问它。- 作为下面的测试,当我单击按钮时,我应该清除子 dom(或 iframe 内容)中的 body 标签,但这似乎没有任何影响:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<div class="container-fluid">
<div class="container">
<button class="btn btn-info esmolink">Click here to test</button>
<iframe id="esmoIframeContainer" src="https://approvals.acme.graphics" allowfullscreen="true" width="100%" height="500px"></iframe>
</div>
</div>
<script>
$(document).ready(function() {
$("body").on("click","esmolink",function() {
var doc = $('#esmoIframeContainer').contents().find("body").html("");
console.log(doc);
});
});
</script>
</body>
</html>
为了说明,这里是一个工作示例:https ://jsfiddle.net/3u6y5j94/1/
我究竟做错了什么?
解决方案
推荐阅读
- asp.net - 如何在 Visual Studio 解决方案中查看对 app.config 或 web.config 中的键的所有引用/调用?
- c++ - 没有继承的链表
- forms - 保护 Web 表单免受垃圾邮件影响的世界惯例
- javascript - 三.js 使用 RectAreaLight 低 fps
- python - 用自定义值替换字符串并迭代所有出现
- android - 如何将 p4a 分发版转换为 apk?
- java - 验证 mongo db 单元模拟单元测试
- apache-kafka - Kafka Streams 应用程序重置工具不删除内部主题
- asp.net-mvc - 如何在回发时将对象保留在视图模型中
- swift - 如何在类中有初始化器但仍然能够访问类的值