当前位置:  开发笔记 > 编程语言 > 正文

保留内联tinyMCE中的超链接导航

如何解决《保留内联tinyMCE中的超链接导航》经验,为你挑选了1个好方法。

我有一个内联tinyMCE编辑器,HTML文本可能包含超链接.如果用户单击超链接,我希望他们转到URL.如果他们点击其他地方,我想进入编辑模式.

HTML:

User should be able to navigate to a link and also edit the text by clicking outside the link.

剧本:

tinymce.init({
  selector: '#tinymce',
  inline: true
});

$('#mylink').on('click', function(e) {
  // This never fires
  console.log('Link clicked...');
});

jsfiddle:http://jsfiddle.net/rdog33/uLhdq447/

正如您所看到的,我有一个想法可以挂钩超链接的click事件,并使用window.location.href手动发送用户,但事件不会触发.如果我取消注释初始化,它触发,所以很明显,tinymce会以某种方式干扰.

有任何想法吗?



1> Roger..:

Thariama的答案几乎是正确的 - 谢谢你让我走上正轨.以下是我的最终代码:

tinymce.init({
  selector: '#tinymce',
  inline: true,
  setup: function(editor){
    editor.on('init', function() {
      $(editor.getBody()).on('click', 'a[href]', function(e) {
        window.location.href = $(e.currentTarget).attr('href');
      });
   }
});

修复了语法错误,其中'editor'被用作参数两次

更改了事件处理以处理所有超链接,即使内容被用户替换

添加了超链接的导航

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有