2010-01-19 5 views
0

У меня есть некоторые HTML:Получить класс и применить другой класс

<div id="tagCloud"> 
<a class="5" title="1 records" href="tags=Battleship">Battleship</a> 
<a class="4" title="1 records" href="tags=Cabbage">Cabbage</a> 
etc... 

Я хочу взять значение класса, и преобразовать его в слово.

Так что если класс = 5, добавьте класс пять?

+1

Как высоко могут проходить классы? то есть у вас потенциально есть ''? – czarchaic

+0

Класс будет только когда-либо 1,2,3,4,5,6 или 7. – CLiown

ответ

0

Это заменит все классы, называемые 5:

$(".5").removeClass("5").addClass("five"); 

Если вы хотите автоматизировать ее для любого класса с именем цифр, то это будет сложнее. Я бы сделал custom selector, который мог бы выбирать классы только с номерами (на основе regex), а затем использовать each для прокрутки и узнать, что это за номер, для каждого элемента, а затем создать функцию для translating a number into english, а затем добавить этот класс , Обратите внимание, что это было бы не очень быстро.

+0

Это буквальный способ обработать корпус для 5/5, но не обобщает, что я думаю, что @danit спрашивает , –

0

Если вы знаете, максимальное число классов, вы можете сделать это (с макс быть 10):

var nums = new Array("zero","one","two","three","four","five","six", 
        "seven","eight","nine","ten"); 
for (var i = 0; i < nums.length; i++) 
{ 
    $("." + i).addClass(nums[i]); 
} 

Я не знаю ни одного способа более динамически получить текст ряда, но что-то может существовать.

Смежные вопросы