search

Home  >  Q&A  >  body text

javascript - 如何让node-webkit用浏览器打开链接

在写一个类似编辑器的东西,有个预览功能,默认链接好像是在当前窗口打开的,所以我监听了点击事件并用了Shell.openExternal()这个函数打开链接。最后发现能达到我的效果,但是程序还是会自动在当前窗口打开一遍,真蛋疼。
代码如下(jQuery):

$('#preview').click(function(e) {
    var t = $(e.target);
    if(t.context.tagName == 'A') {
        var gui = require('nw.gui');
        gui.Shell.openExternal(t.attr('href'));
    }
});

求个简单的点击链接用浏览器打开不用程序窗口打开的方法吧。

p.s.想问一下node-webkit有.on()事件,jQuery也有,不会冲突么?我用.on()就没成功过..经常控制台会报错,说此对象没这事件。

ringa_leeringa_lee2902 days ago550

reply all(2)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-10 12:49:19

    在node-webkit的Google Group上咨询到了正确答案了。原来是需要增加代码去阻止默认事件。 在代码后增加event.preventDefault();后正常工作。

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 12:49:19

    也可以把href改为data-href,这样也能避免触发默认行为。

    reply
    0
  • Cancelreply