どこかをクリックするたびにコンテキストメニューを非表示にするためのクリックイベントを設定しました。しかし、私は最近、チェックボックス付きのコンテキストメニューをクリックすると隠されないように変更しました。 はここのコードです:理論的にはこのイベントは、一部のクリックでのみ表示され、他の表示では表示されないように見えるのはなぜですか?
document.observe('mouseup', function(event){
var $j = jQuery.noConflict();
if(men_con_afisat == 'da' && anulare_ascundere_men_con == ''){
men_con_afisat = 'nu';
if($j(event.target).attr('class').indexOf('no_hide')<0)
{
alert($j(event.target).attr('class'));
ascundere_men_con();
}
}
else if(sectiune_pagina == 'proiecte'){
perioada_dezactivare_tragere();
perioada_dezactivare_mutare();
}
else{
}
coordonate_cursor_x = event.clientX;
coordonate_cursor_y = event.clientY;
});
私は上をクリック事はそのクラスの属性に「no_hide」を持っていない時はいつでも、それは私がクリックてる要素のclass属性を印刷する必要があります。しかし、それはほとんどの場合発生しません。関数を変更したコンテキストメニューを表示して非表示にした後でのみ起こります。
私が間違っていることについて何か考えてみませんか?
ascundere_men_con()は、コンテキストメニューを非表示にする関数です。
なぜPrototype.js **と** jQueryを使用していますか? 1つを使用し、それに固執する。しかし、それらを組み合わせてはいけません。 –
私は本当に選択肢がありません。私は約30%が完了したときにウェブサイトで作業を始めました。私はそれに慣れていないプロトタイプを持っていましたが、jqueryが気に入らないことはわかりませんでした。とにかく、それは私の問題を引き起こしているかもしれないと思いますか? – Bogdan
http://jsfiddle.net/またはhttp://jsbin.com/でデモを設定します。 –