TInyMCE预览插件:链接无法点击

时间:2017-04-21 14:01:41

标签: tinymce tinymce-4

我使用TinyMCE 4,我已将源内容作为链接插入

<a href="http://google.com">Sample Link</a>

在TinyMCE中插入上述内容后,如果我点击TinyMCE的预览按钮,那么锚标签将以链接的形式出现,但它不可点击。

任何人都可以指导我们如何使其成为可点击的锚吗?

  

我已按照以下链接(通过添加default_link_target:&#34; _blank&#34;):   https://community.tinymce.com/communityQuestion?id=90661000000MrWjAAK   &安培;   How to open hyperlink in new window under tinymce text editor?   但似乎没有工作。

     

但似乎没有工作。

2 个答案:

答案 0 :(得分:1)

preview插件具有专门阻止链接被点击的代码。如果您查看插件的JavaScript代码,您将看到如下内容:

var preventClicksOnLinksScript = (
  '<script>' +
    'document.addEventListener && document.addEventListener("click", function(e) {' +
        'for (var elm = e.target; elm; elm = elm.parentNode) {' +
          'if (elm.nodeName === "A") {' +
           'e.preventDefault();' +
          '}' +
        '}' +
    '}, false);' +
  '</script> '
);

此代码专门用于解决可能导致preview中的链接无意中删除编辑器实例的问题。

如果您单击预览窗格中包含target=_top的链接,您将最终吹走编辑器并将其替换为该链接的内容 - 可能不是您想要的。

答案 1 :(得分:0)

我知道这是一个旧线程,但也许它将帮助某个人。如果您希望链接在tinymce prevew插件的新窗口中打开,请删除此脚本:

<script>document.addEventListener && document.addEventListener("click", function(e) {for (var elm = e.target; elm; elm = elm.parentNode) {if (elm.nodeName === "A") {e.preventDefault();}}}, false);</script>

然后将其放置:

<script>function externalLinks() { for(var c = document.getElementsByTagName("a"), a = 0;a < c.length;a++) { var b = c[a]; b.getAttribute("href") && b.href.hostname !== location.hostname && (b.target = "_blank") } } ; externalLinks();<\/script>

享受!