主要HTML
<html>
<head></head>
<body>
<h1>Main</h1>
<object type="text/html" width=100% height=100% data="./emb.html" id="dom"></object>
</body>
</html>
其他HTML
<html>
<head></head>
<body>
<h1 id="emb">Embedded html</h1>
</body>
</html>
我想使用jquery更改 object 标记内的一些元素样式。
我所尝试的是$("#dom").find("#emb");
,但它不起作用
非常感谢您的回答!
答案 0 :(得分:0)
首先,您必须在主html页面中添加jquery版本。还可以使用.contents()和load()来获取对象元素,如
// wait until your object loads
$('#dom').load(function() {
// find the element needed
emb = $(this).contents().find('#emb');
alert(emb.html()); // for testing
});
完整代码,
<html>
<head></head>
<body>
<h1>Main</h1>
<object type="text/html" width=100% height=100% data="./emb.html" id="dom"></object>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
$(function(){
// wait until your object loads
$('#dom').load(function() {
// find element whose id is emb
emb = $(this).contents().find('#emb');
alert(emb.text()); // for testing
});
});
</script>
</body>
</html>