スパンを追加する必要があります(たとえば、ボディに)、それが「最後の」スパンになるように機能するはずです。
例:
var $someparam = 'is';
$('body').append('<span>spanner</span>');
$('span :last').text($someparam);
$(document).on('click', 'span :last', function() {
$(".somediv").not(":contains('" + $someparam + "')").addClass("hidden");
});
編集:これは同じ正味の効果があることに注意してください:
var $someparam = 'is';
$('body').append('<span>' + $someparam + '</span>');
$(document).on('click', 'span :last', function() {
$(".somediv").not(":contains('" + $someparam + "')").addClass("hidden");
});
これが最も効率的です:
var $someparam = 'is';
$('body').append('<span id="myspan">' + $someparam + '</span>');
$('#myspan').on('click', function() {
$(".somediv").not(":contains('" + $someparam + "')").addClass("hidden");
});
そして、パラメーターを ID の一部として使用します。
var $someparam = 'is';
$('body').append('<span id="myspan' + $someparam + '">' + $someparam + '</span>');
$('#myspan'+ $someparam ).on('click', function() {
$(".somediv").not(":contains('" + $someparam + "')").addClass("hidden");
});
EDIT2:それぞれの実例を含むサンプルページを追加します。これは少し不自然ですが、上記のそれぞれに加えて、クリック可能なボタンを介して何度でも追加された 1 つの動的スパンを示しています。(1-4 をクリックしてから、新しいスパンをクリックして効果を確認します)...
いいえ、id にはコンマを含めることはできません。許可されたセット (html 仕様を参照) 内の「文字」と数字のみを含めることができ、数字以外の
http://jsfiddle.net/Cecfu/1/で開始する必要があります。