【问题标题】:Summernote always open link in new tabSummernote 总是在新标签页中打开链接
【发布时间】:2016-11-19 17:34:59
【问题描述】:

当用户使用 Summernote 插入链接时,它会为他们提供是否应在新选项卡中打开链接的选项。如何强制用户始终选择在新选项卡中打开链接?即使只是能够隐藏该选项也会很有用,因为我可以在服务器端添加target="_blank"。无论哪种方式,我一直在尝试很多事情,但我一直无法找到答案。

http://summernote.org/

谢谢

【问题讨论】:

    标签: javascript html css summernote


    【解决方案1】:

    我不熟悉 Summernote,API 中应该有一个选项可以禁用它,但如果您正在寻找快速解决方案,您可以通过 CSS 定位该选项并将其隐藏。

    CSS 隐藏:

    .note-editor .link-dialog .checkbox { display: none; }
    

    但我认为它将保持默认状态(未选中),要强制它被选中,您需要 JavaScript。

    使用 JavaScript 强制检查:

    document.querySelector('.note-editor .link-dialog .checkbox input').checked = true;
    

    【讨论】:

    • @ZachPanzarino 你能创建一个 jsfiddle 或者分享一个现场演示进行调试吗?
    • 我一直在使用summernote的自定义配置,因此类不一样。我已经弄明白了。
    • 这是解决这个问题的唯一方法吗?还是有这个的配置设置?
    【解决方案2】:

    进入summernote.js文件并找到

    $openInNewWindow.prop('checked', linkInfo.isNewWindow);
    

    通过替换 linkInfo.isNewWindow 来强制设置为真。

    $openInNewWindow.prop('checked', true);
    

    希望它能解决您的问题。

    【讨论】:

      【解决方案3】:

      您可以使用linkTargetBlank: false 选项来禁用复选框上的默认选中。

      像这样:

      $('.wysiwyg').summernote({
          linkTargetBlank: false
      });
      

      查看 github 上的拉取请求:https://github.com/summernote/summernote/pull/2195

      【讨论】:

      • 我必须在 "....summernote({..." 行上方添加 "// @ts-ignore" 以使 typescript 的类型检查变得愉快。
      【解决方案4】:

      当您使用 Summernote v0.8.11 时,只需转到 summernote.js 文件并将 isNewWindow: true 设置为 true 而不是 $openInNewWindow.is(':checked')。它在第 6219 行附近。

      $openInNewWindow.prop('checked', isNewWindowChecked);
      $linkBtn.one('click', function (event) {
        event.preventDefault();
        deferred.resolve({
            range: linkInfo.range,
            url: $linkUrl.val(),
            text: $linkText.val(),
            isNewWindow: $openInNewWindow.is(':checked') // change this
        });
        _this.ui.hideDialog(_this.$dialog);
      });
      

      【讨论】:

        猜你喜欢
        • 2013-11-30
        • 1970-01-01
        • 2011-09-29
        • 1970-01-01
        • 2020-07-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多