我有一個列表,如果<span>
元素,我需要過濾和應用多個操作(文本替換和有條件地添加一個類)。我有以下工作代碼:多個操作的JQuery語法
$('span').filter(function() {
return $(this).text().toLowerCase()==phrase;
}).text(translation);
$('span').filter(function() {
return $(this).hasClass('translatable') && $(this).text().toLowerCase()==phrase;
}).addClass(translated);
這工作,而是通過所有的<span>
s的顯然會兩次。是否有可能將它們組合成一個迭代的東西上的線路:
$('span').filter(function() {
return $(this).text().toLowerCase()==phrase;
}).function() {
$(this).text(translation);
if($(this).hasClass('translatable'))
this.addClass("translated")
}
只需鏈接方法:'.text(translation).addClass(translated);' – billyonecan 2013-04-25 07:35:21
@billyonecan是的,我首先想到的,但關於更詳細的代碼,過濾器是可以被替換的文本之間這兩種方法... – 2013-04-25 07:38:05
@SamuelCaillerie如果是這樣的話,'翻譯'類將永遠不會被添加(因爲文本將在前面的過濾函數之後被替換)。我仍然認爲這只是方法鏈的一個例子 – billyonecan 2013-04-25 07:45:45