2010-02-26 67 views
1

我有一个简单的页面(的index.html)与一个div变化内容:jQuery的,在弹出

我填充该div有一些简单的jQuery命令:

$("#email").html("[email protected]"); 

有一种在弹出框中填充类似div的方法?我喜欢使用弹出窗口来进行调试,但我不想在每次主页面刷新时重新加载弹出窗口。

换句话说,jQuery能否在不同的窗口上搜索元素?

这是一个远射,但我想我会问。

+0

你说的 “弹” 是什么意思?没有这样的HTML元素。有很多方法可以实现一个弹出窗口。要回答这个问题,我们需要知道你在使用哪一个。 – 2010-02-26 17:47:49

+0

@詹姆斯:他的意思是弹出窗口。是那么模糊? – 2010-02-26 17:58:13

+0

我指的是一个弹出窗口。或者也许只是一个不同的页面。 我的问题是,jQuery可以更改弹出框中的元素,或更改不同页面上的元素?我不想用jquery创建一个弹出窗口。 只需更改弹出窗口中的内容,而不是从完全不同的窗口中进行更改。 例如: Page1.html有一个按钮,说“更新Page2” Page2.html有一个div,可以填充任何你想要的东西。 (当您单击page1.html上的按钮时,page2.html上的div会根据您的需要进行更新。) 希望这更清楚。 – coffeemonitor 2010-02-26 17:59:32

回答

1

所以,你想启动一个单独的浏览器,加载一个单独的网页,以显示更多信息。 ???

不要这样做!

速度很慢,大多数用户觉得它很烦人。如此令人讨厌的是,几乎每个人都会使用某种形式的弹出式窗口拦截器,您现在希望它们禁用,只是为了查看页面上的某些内容。大多数人会发现这极其令人讨厌的

由于您已经在使用jQuery,为什么不使用jQuery UI's Dialog plugin。这会将您页面上的隐藏DIV转换为弹出窗口。它看起来比老式的弹出式更好,运行速度更快,并且因为它是同一页面的一部分,所以可以解决您所问的问题。

更新:对于咆哮 - 我没有看到评论关于将其用于调试目的 - 但实际上,使用弹出窗口进行调试是一种更糟糕的想法,即使您是唯一一个恼人的人。 (你有没有考虑过alert()

+0

我实际上写了一个对话框开启器,但使用它一段时间后,又回到了一个单独的弹出窗口,因为使用单独的弹出窗口有很多优点。顺便说一下,弹出窗口在用户使用按钮或某些号召性用语启动它们时是可以的。 – TARKUS 2017-02-11 15:03:05

0

这实际上并不是你要求的,但我认为它是一个近似替代品。

在Firefox中有可能使用Firebug(Opera有蜻蜓,和Chrome有其开发者工具),并从jQuery的使用:

console.log("message to display in the console, plus: " + variable_names) 

显示调试消息。不过,这些console.log()命令将在控制台未处于活动状态时导致js错误。

0

要回答这个问题,不,据我所知,这是不可能的。

虽然你可以做的是从popoup窗口读取内容。

var popup = window.open('url', 'params'); 
var dom = popup.document.body; 
for(i in dom){ 
    console.log(dom[i]); 
} 

但是,您不能更改内容。

1

如果只是调试我不会推荐一个弹出窗口。你可以去blackbird [http://www.gscottolson.com/blackbirdjs/]firebug console [控制台。日志( '等等等等')]

否则,你可以检查出
http://choosedaily.com/1178/15-jquery-popup-modal-dialog-plugins-tutorials/

,并在最后,如果你只是想坚持弹出窗口,这可能帮助你

http://swip.codylindley.com/popupWindowDemo.html

+0

啊...黑鸟......那是我要推荐的那个---除了我忘了它的名字...... – 2010-02-26 18:36:12

+0

我认为这里的更大问题不是关于如何调试,而是如何替换内容在一个弹出窗口中。 – TARKUS 2017-02-11 15:03:51