Safari浏览器中的JS window.open方法

时间:2018-01-10 08:14:17

标签: javascript ios safari

我在Safari浏览器中遇到了JS window.open方法的问题:

  

标准的window.open()JavaScript方法不能用于打开   来自全局HTML文件或扩展栏的新选项卡和窗口。   https://developer.apple.com/library/archive/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html

所以,我正在尝试这个代码:

safari.self.browserWindow.openTab(myLink);

但是我收到了一个错误:

  

index.html:199未捕获的ReferenceError:未定义safari

(在谷歌浏览器开发者工具iPhone仿真中,它不适用于真正的iPhone)

编辑,这里有更多背景信息:

var link = 'http://www.example.com/';
something.addEventListener("touchend", function (e) {
    e.preventDefault();
    e.stopPropagation();
    if(navigator.userAgent) {
        safari.self.browserWindow.openTab(link);
    }
});

为什么safari.self.browserWindow.openTab(myLink);在Safari中不起作用?

1 个答案:

答案 0 :(得分:0)

使用像这样: safari.self.tab.dispatchMessage(' openurlNewTab',' http://www.example.com/');

//消息名称' openurlNewTab'是任意的//