我有用于生成为IE和Adobe SVG查看器开发的SVG的代码。 Adobe SVG Viewer具有一个名为browserEval
(请参阅http://www.xml.com/lpt/a/994)的自定义函数,用于使浏览器评估window.open()调用。这在Chrome的本地SVG渲染器中不起作用(并且我没有尝试Firefox)。如何从SVG内部导致跨平台(至少IE和Chrome)弹出窗口?
如何重写此弹出窗口功能以在所有现代SVG支持的浏览器中正常工作?在IE浏览器而不是Chrome的这种原始的作品之一:
function popUp(loc) {
browserEval("window.open('"+loc+"','_blank',
'width=1000,height=780,scrollbars=yes,resizable=yes,
status=no,toolbar=no,menubar=no,location=no')");
}
我想这里面在Chrome的工作,但会导致有关IE浏览器的参数的数目错误:
var browserEvalCrossBrowser = (typeof(browserEval)=='undefined') ?
function(x) { eval(x); } : browserEval;
function popUp(loc) {
browserEvalCrossBrowser("window.open('"+loc+"','_blank',
'width=1000,height=780,scrollbars=yes,resizable=yes,
status=no,toolbar=no,menubar=no,location=no')");
}
其他东西看起来像一个错误:您的双引号中的字符串是多行,这是不允许的。 – some 2010-10-14 22:17:03