Добавление атрибутов ко всем тегам HTML

0

Я хочу добавить атрибуты id="draggable" ко всем тегам.

Например -

<img src="http://sample.jpg"> следует изменить на <img src="http://sample.jpg" id="draggable" >

<p>abcd</p> должен измениться на <p id="draggable">abcd</p>

Это должно применяться ко всем тегам, кроме <HTML><HEAD><script><style>

Любое предложение?

  • 8
    Размещение одного и того же идентификатора для нескольких элементов на одной странице не является разумным планом. Идентификаторы должны быть уникальными.
  • 1
    добавление одного и того же идентификатора к различным элементам не очень хороший подход ... пойти на урок ..
Показать ещё 1 комментарий
Теги:

3 ответа

1
Лучший ответ

Использовать класс вместо идентификаторов

var elems = document.body.getElementsByTagName("*");
elems.setAttribute("class","draggable");
0

ID (ы): каждый элемент должен иметь только один идентификатор. На каждой странице может быть только один элемент с ID CLASS (-ами): вы можете использовать mutliple-классы для одного элемента. Вы можете использовать один и тот же класс для нескольких элементов

  • 0
    Да, согласен - я сейчас использую атрибут класса
0

Добавление одинакового id ко всем элементам HTML не является хорошим способом. Лучше иметь такое же имя класса. Динамически, если вы хотите добавить один и тот же класс ко всем элементам, вы можете сделать что-то вроде ниже

$('#parent').find('*').addClass('draggable');

http://jsfiddle.net/663m8qyd/

<div id='parent'>
    <p>ABC</p>
    <img src='http://www.w3schools.com/tags/smiley.gif' alt="Smiley face"/>
    <div id='child'>
        <div id='child1'>test1</div>
        <div id='child2'>test2</div>
    </div>
</div>

Чтобы добавить draggable класс ко всем элементам внутри parent div, найдите каждый элемент и добавьте соответствующий класс. Надеюсь, это поможет!

  • 1
    Это не помечено jQuery
  • 0
    @RahulB ... Согласен! .. Хотя, кстати ... теги регулярных выражений тоже не кажутся логичными ...;)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню