单击屏幕时刷新iframe

时间:2013-05-21 18:09:27

标签: javascript

不太熟悉javascript。我已经做了一些搜索,并且无法将此代码实现到我当前的项目中。

基本上想要在点击屏幕时刷新iframe。我目前有这个代码:

document.getElementById('').contentWindow.location.reload(true);

我想将其集成到此代码中:

    $(".launch").loadthis({ direction: "left", connect: true });

我该怎么做?

2 个答案:

答案 0 :(得分:1)

您的问题中有一些问题尚不清楚。

1)当您说“点击屏幕”时,您的意思是什么?

  • 打开浏览器窗口中的任何位置?
  • 打开的浏览器窗口中的任何位置,包括iframe?

2)您的IFRAME是浏览器窗口宽度和高度的100%吗?

无论如何,下面我打破你的问题并希望给你一个解决方案......

我们如何刷新网页?

您可以使用以下网址刷新网页:

location.reload(true);

我们如何刷新iframe?

您可以使用以下代码刷新IFRAME: Refresh an iframe

<iframe id="myiframe" src="http://google.com"></iframe>
document.getElementById("myiframe").src = "http://www.google.com?"+(+new Date());

我们如何检测点击?

您可以在此处使用此解决方案: https://stackoverflow.com/a/2622026/1688441

document.onclick= function(event) {
    // Compensate for IE<9's non-standard event model
    //
    if (event===undefined) event= window.event;
    var target= 'target' in event? event.target : event.srcElement;

    alert('clicked on '+target.tagName);
};

剩余问题:

如果用户在IFRAME中点击会怎样?

如果用户在IFRAME中单击,并且我们控制IFRAME的代码,我们可以在IFRAME的HTML / JAVASCRIPT中有一个单击侦听器并触发刷新。

如果我们有不同的域名,由于安全原因,没有太多可以做的事情。

答案 1 :(得分:0)

window.addEventListeneder("click", windowClickHandler);

function windowClickHandler(event) {
    document.getElementById('iframe_id').contentWindow.location.reload();
}

另见this question;