私はjqueryがあまり得意ではありません。関数を機能させるために変数演算子を配置することは可能ですか? 異なるページで使用される jQuery のバージョンが異なるためです。
.on関数は 1.7 で登場しましたが、一部のサイトはそれより古いバージョンで実行されているため、代わりに .click 関数を使用する必要があります。そして、各バージョンのコードの重複を避けたいです。
例えば :
$('#mySelector')(var <= 3.4) ? ".click(function()" : ".on('click', function()");
{
$( "#dialog p span" ).remove();
$( "#dialog p" ).append('<span>'+ isEncHTML(html_output)
});
ご協力ありがとうございました。
より明確にするために:
これは 1.7 で動作します (ボタンを含む - オプション:
$('.delete_league, .print_league').on('click', function()
{
$( "#dialog p" ).append('<span>'+wpslm_v_script_vars.delete_league+'</span>');
$( "#dialog" ).dialog({
modal: true,
buttons:
[{
text: "OK",
click: function()
{
$( "#dialog p span" ).remove();
$(this).dialog("close");
}
}]
});
});
そして、これは1.6で動作します。ボタンオプションをそのままにしておくと、エラーがスローされます。
$('.delete_league, .print_league').click(function()
{
// Just in case there is an old message hanging around
$( "#dialog p span" ).remove();
$( "#dialog p" ).append('<span>'+ isEncHTML(wpslm_v_script_vars.delete_league) +'</span>');
$( "#dialog" ).dialog({
modal: true
});
});
したがって、両方に同じコードを使用できるように、セレクターライン (およびボタンオプション) 変数を作成したいと考えています。つまり、1.7 よりも古いバージョンを実行していることがわかった場合は、ボタンなしで .click を使用する必要があります。それ以外の場合は、buttons-option を使用して .on を使用します。あまり混乱しないことを願っています。