如何優化?jQuery。各種項目的前綴選擇器
$('link[href="dir/style.css"]').attr("href", "dir/style2.css");
$('link[href="../../dir/style.css"]').attr("href", "../../dir/style2.css");
jQuery('link[href="../dir/style.css"]').attr("href", "../dir/style2.css");
如何優化?jQuery。各種項目的前綴選擇器
$('link[href="dir/style.css"]').attr("href", "dir/style2.css");
$('link[href="../../dir/style.css"]').attr("href", "../../dir/style2.css");
jQuery('link[href="../dir/style.css"]').attr("href", "../dir/style2.css");
你可以做這樣的事情:
$('link[href*="dir/style.css"]').attr('href', function(i, oldHref) {
return oldHref.replace('dir/style.css', 'dir/style2.css');
});
使用attribute-contains選擇器選擇元素,然後將函數傳遞給.attr()
以返回更新的值。
這應該用做在單個調用相同,以attr
的attribute ends with selector:
$('link[href$="style.css"]').attr('href', function(index, value) {
return value.replace('style.css', 'style2.css');
});
這取決於你的項目結構,但你可以做這樣的事情
$('a[href*="dir/style.css"]').attr('href', function(i,href) {
// return a version of the href that replaces "style." with "style2."
return href.replace('style.', 'style2.');
});
http://codereview.stackexchange.com/ – Alexander 2013-02-20 23:05:37
一個更好的地方來問這個問題將在http://codereview.stackexchange.com/上 – Ryley 2014-03-13 15:49:42