我想通过删除HTML和body标签将HTML页面加载到我的网页中作为div。但HTML页面有<body onload=" ... " >
,我需要此功能才能继续工作。似乎<div onload=" ... " >
无效。如何在不直接编辑原始网站代码(php)的情况下将此onload功能插入我的网站主体(仅在此页面上)?
答案 0 :(得分:3)
您可以使用jQuery.load将页面内容加载到div中
$(document).ready(function() {
$("#containing-div").load("[url of page with onload function]");
});
上面的代码进入包含div的页面。带有onload函数的页面不会被更改。
答案 1 :(得分:2)
您以前使用过jQuery吗?如果是这样,只需获取你的div的id(让我们说“SomeDiv”),然后像这样使用“ready”方法:
$("#SomeDiv").ready(
function(){
//do stuff
});
答案 2 :(得分:1)
您可以在加载页面的末尾添加一个额外的Javascript标记(一旦插入div中),它将在加载后立即执行。像这样:
<div>
Insert the inner html content of that pages here and add this script at the bottom and add the onload function of the original html to this script.
<script type="javascript">
alert("hello world");
</script>
</div>
请记住将javascript用于您的网页。我的意思是,如果在加载html文档的onload="..."
中定义了在<head>
内调用的javascript函数,并且你将<head>
抛出,则不会工作
答案 3 :(得分:0)
不是最好的,但一种方法是定期检查div是否已加载:
var myInterval = setInterval(function () {
if ($('.mydiv') && $('.mydiv').width() > 0) {
// write your logic here
clearInterval(myInterval);
}
}, 3000);
答案 4 :(得分:-2)
如果要在div上添加onload事件,则不能,但可以添加onkeydown并在文档加载时触发onkeydown事件。
<div onkeydown="setCss();"></div>
$(function () {
$(".ccsdvCotentPS").trigger("onkeydown");
});