2011-12-26 4 views
2

私は、コードのこの部分がありますjQueryの.delegate()と.undelegate()

$('#body').delegate('a', 'click', someFunc); 

をそして私はCKEditorバージョンを使用します。

$('#cm-comment').ckeditor(); 

問題は、私はCKEditorバージョンからタグをクリックすると、 someFuncを呼び出すことはできません。

$('#cke_cm-comment').undelegate('a', 'click'); 

(CKEditorバージョンは、独自のspan要素になりますので、idが、異なっている)。しかしsomeFuncが、まだ呼ばれている。だから私はこれを試してみました。どのように私はこの動作を防ぐことができますか?

+2

jQuery 1.7以降を使用して、代わりにオン/オフを使用してください。 – adeneo

答えて

2

<a>クリックを傍受し、伝播を停止し、「CM-コメント」要素のハンドラを追加:(あなたの<body>が要素であると仮定<body>に出てバブリングからイベントを保持します

$('#cm-comment').delegate('a', 'click', function(e) { e.stopPropagation(); }); 

をidは "body"です)。

関連する問題