我幾乎尷尬地說,我無法找出一個更好的方法來做到這一點。有人可以幫助我重構這段代碼嗎?我嘗試在一個匹配函數中做幾個「或」運算符,但它似乎並沒有採用它們。需要幫助重構這個jQuery片段
$('.ui-icon-pencil, .ui-icon-check, .ui-icon-close, .ui-icon-trash').hover(function(e) {
console.log($(this).attr('class'));
optionsClass = 'ui-icon-pencil';
confirmClass = 'ui-icon-check';
closeClass = 'ui-icon-close';
deleteClass = 'ui-icon-trash';
icon = $(this).attr('class').match(optionsClass);
if(icon == null) {
icon = $(this).attr('class').match(confirmClass);
}
if(icon == null) {
icon = $(this).attr('class').match(closeClass);
}
if(icon == null) {
icon = $(this).attr('class').match(deleteClass);
}
console.log('icon = '+icon);
});
這個完美的作品。 '[0]'做了什麼? – Catfish 2012-03-16 16:14:25
'.match()'返回找到的匹配數組,[0]返回找到的整個匹配項。 – nathanjosiah 2012-03-16 16:37:33