javascript 是否存在函数引用传递?


需求:百度UEditor,如果一实例化那么将开头的空段HTML去掉。
修改:javascript

源码


 function removeEmpty(e){
    e.setContent('');
}
var ueContent = UE.getEditor('content');
ueContent.addListener('ready',removeEmpty(ueContent));

报错


 TypeError: me.body is undefined

提问
1)为什么无法将ueContent这个对象传入到函数removeEmpty中
2)百度UEditor如何去掉头尾部默认的这一段HTML
如何去掉一加载就出现的这一段

JavaScript ueditor

DMG夜神月 10 years, 4 months ago
  • 第一个问题”javascript 是否存在函数引用传递?“,我想你可能还不了解”引用类型“和”基本类型“的概念,这里有一篇文章你可以看一下: http://hellobug.github.io/blog/javascript-variable-assignment/

  • 第二个问题”为什么无法将ueContent这个对象传入到函数removeEmpty中“,我猜你大概是弄错了回调函数的写法,

      
       ueContent.addListener('ready',removeEmpty(ueContent));
      
     

    你这样子写自然是不行的,因为你在这句代码执行的时候就调用了 removeEmpty ,代码里怎么可能能得到 me.body ,这个应该是 ready 后才能拿到的东西吧?
    改成这样试试:

      
       ueContent.addListener('ready', function() { removeEmpty(ueContent) });
      
     
  • 第三个问题,我也不知道

放开那只怪蜀黍 answered 10 years, 4 months ago

Your Answer