我使用javascript在浏览器中打开弹出窗口,但是功能和支持的属性似乎有所不同。
在IE中,我可以打开一个弹出窗口,然后调整它的大小,但是如果我从那个弹出框中打开一个弹出窗口,它不会调整大小。
在Chrome/Firefox中,如果我打开一个弹出窗口,它会有不同的大小,如果我从该窗口再打开一个弹出窗口,它将在父窗口旁边的一个新选项卡中打开。
在Chrome中,我不能删除地址栏。
在Chrome/Firefox中,我无法阻止窗口大小调整。
有没有一种方法可以找出每个浏览器支持的内容,还是让它们都以相同的方式运行?
发布于 2013-12-04 16:11:46
有没有一种方法可以找出每个浏览器支持的内容,还是让它们都以相同的方式运行?
不是的。
您必须记住,用户首选项可以设置为覆盖默认行为,并且一些防病毒套件包括弹出阻塞插件。通常,您也不知道客户端是在移动设备上(可能甚至不能支持弹出)还是一些真正古怪的浏览器。(Linux用户有一些我们从未考虑过的选项,包括仅文本,等等)处理这样一个事实,即您对客户端配置的控制有限,这只是作为web开发人员的一部分。
我的建议是重新考虑设计。我不知道您想做什么,但是请考虑一下使用JavaScript和css的模态对话框之类的东西,只要打开带有"target=_new“的链接,让用户的偏好和浏览器决定是弹出还是新的选项卡。
发布于 2013-12-04 16:47:24
使用JQuery UI的对话框。该框架将在内部处理所有浏览器差异。
发布于 2013-12-05 19:52:44
如果您在web应用程序中从内部打开多个对话框,也许您的UI应该重新考虑以更接近web标准。浏览器中的对话框非常适合查看或简单的一步操作,但除此之外,它们会变得更加混乱和不那么有用。
https://stackoverflow.com/questions/20380199
复制相似问题