私はコードの行を持っていると仮定すると私がそれを理解すると、それをグローバルにするウィンドウへのイベント。ただし、Firefoxではイベントを関数に渡す必要があります。ノー成功でこれを試してみた:jQueryの.on()構文とevent.preventDefault()
$comparePanel.on('click', '.pills li:not(.active)', toggleComparisonPanel(event);
function toggleComparisonPanel(event) {
event.preventDefault();
$(this).addClass('active').siblings().removeClass('active');
$quickSpecsTable.toggleClass('comparison-mode');
$filters.toggle();
}
はこのようなものでも可能です、または.on()関数内で匿名関数にコードを入れて、私の唯一のオプションは、次のコードのようなものはありますか?
$comparePanel.on('click', '.pills li:not(.active)', function(event){
event.preventDefault();
$(this).addClass('active').siblings().removeClass('active');
$quickSpecsTable.toggleClass('comparison-mode');
$filters.toggle();
});
可能であれば、私のイベントハンドラと関数を別々に保つことをお勧めします。
// declare event here, since you're using it here
function toggleComparisonPanel(event) {
event.preventDefault();
$(this).addClass('active').siblings().removeClass('active');
$quickSpecsTable.toggleClass('comparison-mode');
$filters.toggle();
}
// just pass the function here
$comparePanel.on('click', '.pills li:not(.active)', toggleComparisonPanel);
甘い作りたいです!それがそれでした。どうもありがとう :) –