使用jquery在弹出窗口中打开链接

使用jquery在弹出窗口中打开链接,jquery,Jquery,我发现了一些代码,我认为这是我正在寻找的,但它没有完全工作。php文件有10个URL,它随机回显其中一个URL。我试图在这里完成的是在弹出窗口中加载url,并在60秒后使用php文件中的新url重新加载弹出窗口 <button id="fullurl">open window</button> <script type="text/javascript"> function loadurl(){ $.getJSON('links.php?j

我发现了一些代码,我认为这是我正在寻找的,但它没有完全工作。php文件有10个URL,它随机回显其中一个URL。我试图在这里完成的是在弹出窗口中加载url,并在60秒后使用php文件中的新url重新加载弹出窗口

<button id="fullurl">open window</button>

    <script type="text/javascript"> 
function loadurl(){
    $.getJSON('links.php?json', function(data){
        $('#fullurl').popupWindow('src', 'http://' + data.url, { height:500, width:800, top:50, left:50 }); 
        }
    );
}
</script>
打开窗口
函数loadurl(){
$.getJSON('links.php?json',函数(数据){
$(#fullurl').popupWindow('src','http://'+data.url,{高度:500,宽度:800,顶部:50,左侧:50});
}
);
}

您在
json
中被请求。。您的PHP真的返回JSON数据吗

如果不只是使用
$.get
,否则您应该需要一个键来从返回的
数据访问url

差不多

$.getJSON('links.php?json', function(data)
        {
            // ----------------------------------------------vvvv
            $('#fullurl').popupWindow('src', 'http://' + data.url, { height:500, width:800, top:50, left:50 }); 
        }
对于重复部分,像这样使用
setInterval

setInterval( loadurl, 60000);

更新


您似乎正在使用该插件,因此请确保将其包含在您的页面中。

假设您的
popupWindow
已经完全可用,您可以使用一个简单的
setInterval()
定期执行
loadurl()
函数。这还假设
popupWindow
重新使用同一窗口加载以下内容:

$(function() {
   // set up the interval, assign it to a variable so we can dispose of it if needed with var.clearInterval();
   var loadUrlInterval = setInterval(loadUrl, 60000);

   // call loadUrl once since the interval will only start kicking in after 60 seconds
   loadUrl();
});

我试图在弹出窗口中加载url,但没有打开任何东西。嗯,我查看了
popupWindow
插件,它似乎将
click()
绑定到您的链接(
#fullurl
),因此窗口不会自动打开。如果您坚持使用此插件,您可以单击
.trigger()
调用的回调函数中的链接
$.getJSON
如下:
$('#fullurl').popupWindow([您的选项等]).trigger('click')
。但是一个丑陋的解决方案,但它应该工作…我有什么你放在那里,但我认为我的问题是加载窗口我点击按钮,什么也没有出现。顺便说一句,我添加了我的完整代码。@sarsar,除了使用正确的plaugin(更新的答案)外,插件似乎没有返回窗口句柄,因此您无法真正更改已打开窗口的url(因为您无权访问它。)感谢您的帮助,我想我的问题是现在正在加载窗口:(我添加了我的完整代码。