此脚本每2秒运行一次,并检测iframe的url是否已更改。但我无法让它发挥作用。我想提醒iframe的网址是否已更改。例如,如果有人点击链接并在iframed内容上转到另一页。
var prevSrc = "http://www.bodrumlife.com";
function check() {
var curSrc = $('#iframe').attr('src');
if (curSrc != prevSrc) {
alert("hobaa");
prevSrc = curSrc;
}
}
window.setInterval(check, 2000); // 2 seconds
<iframe id="iframe" name="iframe" src="http://www.bodrumlife.com"></iframe>
答案 0 :(得分:4)
如果您更喜欢使用下面的JQuery,则使用以下语法,而不是使用half-jquery和标准javascript。
$(function(){
$('#iframeId').load(function() {
alert("the iframe has changed.");
});
});
虽然我不确定onload功能是否适用于Sarafi。它受到Firfox,IE和Chrome的支持。
编辑:
扩展示例
<script type="text/javascript">
$(function () {
var intialFrameSrc = "http://www.twiij.com";
$("#iframeContentPanel").load(function () {
if (intialFrameSrc != $("#iframeContentPanel").attr('src')) {
alert("the iframe has changed.");
}
});
$("#btnChangeUrl").click(function () {
$("#iframeContentPanel").attr("src", "http://m.smh.com.au/");
});
});
</script>
<iframe id="iframeContentPanel" name="iframeContentPanel" src="http://www.twiij.com" width="500" frameborder="0" height="500" scrolling="no"></iframe>
<input type="button" id="btnChangeUrl" value="Change Url"/>