[KindEditor] 这些年劳资踩过的坑

来源:互联网 发布:淘宝量子恒道在哪里 编辑:程序博客网 时间:2024/04/27 16:05

Q: K(nodes).addClass("myclassname"); K(nodes).removeClass("myclassname"); 不起作用?

A: 是的。可以这么写:

nodes.forEach(function(elem,i,arr){  K(elem).addClass("myclassname");})


Q: K(nodes).unbind("click").bind("click",func); 事件绑不上去?

A: 是的,跟addClass一个德性。马的! 可以这么写:

nodes.forEach(function(elem,i,arr){  K(elem).unbind("click").bind("click",func);});

Q:如何在edit创建好了之后去改变编辑区域的高度?
A:正规的方式是调用KEdit扩展方法里面的setHeight()方法。可以到kindeditor.js里面搜"setHeight: "就能找到。
不要自己去随意设置.ke-edit,iframe,div的高度,会使UI发生混乱。

例如,你创建的是myeditor对象,则写法是:

myeditor.edit.setHeight(500);

Q:K.each(knodes,function(i,elem){}) 为什么会造成混乱?
A:如果knodes是这样获得的:knodes = K(".classname",parentnode); 那knodes这个集合不仅包括查出来的所有节点,同时也包括一些固定节点(doc,win,prototype...),对这样一个集合进行each必然是错误的。
可以这么写:
var nodes = parentnode.querySelectorAll(".classname");nodes.forEach(function(el){  K(el).unbind("click").bind("click",function(){alert("ri")});});

Q:K(node).unbind("hover").bind("hover",function(){alert("cao")}),绑定hover事件为何不生效?
A:KE只支持下列事件:
blur,focus,focusin,focusout,load,resize,scroll,unload,click,dblclick,
mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,
change,select,submit,keydown,keypress,keyup,error,contextmenu.
hover事件可以用mouseover/mouseenter等事件代替。


原创粉丝点击