Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   как программно присвоить id элементу <div> (https://javascript.ru/forum/events/4593-kak-programmno-prisvoit-id-ehlementu-div.html)

jeel 06.08.2009 12:01

как программно присвоить id элементу <div>
 
Подскажите ,пожалуйста, как программно присвоить id элементу <div>??:help:

Андрей Параничев 06.08.2009 12:48

element.id = "unique_id";

Где element - элемент, которому вам нужно присвоить id.

Globus 06.06.2014 23:02

При открытии/загрузке страницы тегу body должен присваиваться айди.

<script type="text/javascript">
$(document).ready(function(){
body.id = "unique_id";    
};  
</script>


Эта конструкция не срабатвает, подскажите плиз, в чем проблема?

Aetae 06.06.2014 23:05

document.body.id = "unique_id";
document.getElemetsByTagName('body')[0].id = "unique_id";
document.querySelector('body').id = "unique_id";

Globus 06.06.2014 23:19

есть! спасибо
+ в репу

Globus 06.06.2014 23:26

а если упомянутый тег body находится в iframe, как должен выглядеть код ?
и при этом страница, на которой размещен фрейм и страница внутри фрейма лежат на моем домене (т.е. они обе являются страницами одного сайта).

Globus 06.06.2014 23:47

вроде так работает

<iframe src="index.html"></iframe>
 
<script type="text/javascript">
  var iframe = document.getElementsByTagName('iframe')[0];
  var iframeDoc = iframe.contentWindow.document;
  iframe.onload = function(){iframeDoc.body.style.backgroundColor = 'red'};
</script>

Globus 07.06.2014 00:10

а нет, никак не могу изменить стиль документа в iframe, несмотря на то, что этот документ является частью моего сайта.

Aetae 07.06.2014 00:51

Globus,
<iframe src="index.html"></iframe>
 <script type="text/javascript">
  var iframe = document.getElementsByTagName('iframe')[0];
  iframe.onload = function(){
   var iframeDoc = iframe.contentWindow.document;
   iframeDoc.body.style.backgroundColor = 'red'
  };
</script>

В вашем случае во фрейме просто ещё нет document(не загрузился ещё), потому следует его получать уже после события onload когда он точно на месте.

Globus 07.06.2014 12:46

Спасибо! А если iframe генерируется на странице и вспылвает в лайтбоксе, то onload спасёт? или сгенерированный при нажатии на кнопку фрейм не будет считаться появившимся на месте?


Часовой пояс GMT +3, время: 22:00.