私はいくつかのcontenteditable要素を機能させようとしています。明らかに、これは単純なHTML5属性だけで非常に簡単ですが、属性を持つ要素の量を切り替えたり、属性自体を切り替えたりできるようにしたいと思います。たとえば、私の開始要素はthis<article class="column contentEditable">で、次にofのクラスをcontentEditable使用して属性を切り替えcontenteditableます。ただし、ユーザーが選択した内容に基づいてこの要素を何度も複製しているため、.focus()アクションを関数として実行する必要があります。この関数は、さらにarticles追加されたときに呼び出されます。これまで私と一緒に?そう願っています。
contentEditableこれが私がこれまでに持っているjQueryです(別の関数がクラスに属性を持つように設定することを念頭に置いてcontenteditable)
// content edittable
function makeEditable(action){
$('.contentEditable').focus(function(){
$(this).addClass('active');
$(this).prepend('<div class="toolbar" contenteditable="false">TEST</div>');
});
$('.contentEditable').blur(function(){
$(this).removeClass('active');
$(this).remove('.toolbar');
alert('test');
});
}
ある程度これは完全に機能しarticleますが、このDOM呼び出しが以前に発行されたときにすでに存在している可能性があるため、2回以上実行されていることを意味します(選択のオプションを変更した回数によって異なります。方法地球私は関数をアイテムごとに一度だけ実行するように、つまりスタックではなく実行することができますか?
これがすべて理にかなっていて、説明するのがかなり難しいことを願っています。