Изменить имя тега элемента Mootools - PullRequest
2 голосов
/ 12 октября 2011

В конце я ооочень много постов и примеров Fiddle о том, как изменить имя тега всех элементов на странице с помощью Jquery, но НЕТ - с помощью mootools.Есть ли способ сделать это?Мне нужно преобразовать все tr в div, не в состоянии изменить HTML-страницу фактической страницы, должны сделать это с помощью Moo.Пожалуйста, помогите.

У меня есть 15 tr в div, сумасшедший, да!

<div id="mydiv">
<tr></tr>
<tr></tr>
...
</div>

Мне нужно преобразовать их в div, но держать все атрибуты и html в пределах tr в такте.Пожалуйста помоги!Спасибо!

Ответы [ 2 ]

4 голосов
/ 12 октября 2011

Замена элементов в mootools проста, если разметка не является недействительной, как указано выше.

http://jsfiddle.net/dimitar/4WatG/1/

document.getElements("#mydiv span").each(function(el) {
     new Element("div", {
        html: el.get("html")
    }).replaces(el);
});

это заменит все промежутки для дивов в разметке выше (используйте промежутки вместо trs).

как указано выше, http://jsfiddle.net/dimitar/4WatG/ -> firefox удаляет неверную разметку TR, не являющуюся дочерним элементом таблицы, что затрудняет нацеливание.

1 голос
/ 26 ноября 2011

Я просто собираюсь оставить это плавающим здесь.

Element.implement({'swapTagName': function(newTagName) {
    return new Element(newTagName, {html: this.get('html')}).replaces(this);
}});

Использование:

//cleaning HTML3.2 like it's 2012
target.getElements('font[size=5pt],b').swapTagName('h2').addClass('header_paragraphs');
target.getElements('font').swapTagName('p');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...