Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.12.2012, 16:42
Аспирант
Отправить личное сообщение для shtopor Посмотреть профиль Найти все сообщения от shtopor
 
Регистрация: 02.05.2010
Сообщений: 68

Обращение к элементу по классу
Здравствуйте, подскажите как обращаться по классу? documentGetElementByClass нету, а в сети большая часть примеров нерабочие. Подскажите что делать?
Ответить с цитированием
  #2 (permalink)  
Старый 08.12.2012, 16:47
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

Сообщение от shtopor
documentGetElementByClass нету,
wtf?
<!DOCTYPE HTML>
<html>
  <head> </head>
  <body>
    <div class="t"></div>
    <div class="t"></div>
    <div class="t"></div>
    <div class="t"></div>
    <script>
var elems = document.getElementsByClassName("t");
alert(elems.length);


    </script>

  </body>
</html>
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #3 (permalink)  
Старый 08.12.2012, 17:21
Аспирант
Отправить личное сообщение для shtopor Посмотреть профиль Найти все сообщения от shtopor
 
Регистрация: 02.05.2010
Сообщений: 68

Суди по записям на других форумах, не все брузеры это поддерживают
Ответить с цитированием
  #4 (permalink)  
Старый 08.12.2012, 17:33
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

shtopor, либо забейте на ие меньше 8 , либо используйте jquery.
или так
function Cls(FindClass){
	
	 var allTag, allElem, arrE = [], i;
	
	    if(document.getElementsByClassName){
			return document.getElementsByClassName(FindClass);
		}
		
	     allElem = document.body.getElementsByTagName('*');
	       
	       i = allElem.length;
	
	while(i--){
	    if(allElem[i].className == FindClass) arrE.push(allElem[i]);
	};
	return arrE;
	}
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #5 (permalink)  
Старый 08.12.2012, 18:29
Аспирант
Отправить личное сообщение для shtopor Посмотреть профиль Найти все сообщения от shtopor
 
Регистрация: 02.05.2010
Сообщений: 68

Спасибо большое, забыл про getElementsByTagName)) А как заменит тег? innerHTML отвечает только за содержимое.
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2012, 18:49
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

shtopor, что бы не завадть глупых вопрос по читайте http://learn.javascript.ru/dom
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #7 (permalink)  
Старый 08.12.2012, 20:13
Аватар для a_l
a_l a_l вне форума
Кандидат Javascript-наук
Отправить личное сообщение для a_l Посмотреть профиль Найти все сообщения от a_l
 
Регистрация: 15.09.2011
Сообщений: 143

Сообщение от cyber Посмотреть сообщение
shtopor, либо забейте на ие меньше 8
Меньше 9, восьмой ие не поддерживает getElementsByClassName.
IE8 поддерживает querySelectorAll('.t'), так что можно его использовать.
Ответить с цитированием
  #8 (permalink)  
Старый 08.12.2012, 20:58
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

a_l, да чет думал до 8й, а оказалось до 9й)
тогда можно так
function Cls(FindClass){
	
	 var allElem, arrE = [], i;
	
 if(document.getElementsByClassName){

   return document.getElementsByClassName(FindClass);
		
 }
      
  else if(document.querySelectorAll){
    
         return document.querySelectorAll("."+FindClass);
       }
        
		
	     allElem = document.body.getElementsByTagName('*');
	       
	       i = allElem.length;
	
	while(i--){
	    if(allElem[i].className == FindClass) arrE.push(allElem[i]);
	};
	return arrE;
	}
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обращение к элементу AdDa Общие вопросы Javascript 10 11.11.2012 14:07
обращение к элементу culver jQuery 2 14.06.2012 13:09
Обращение к элементу Isaac (X)HTML/CSS 6 11.11.2011 18:18
Обращение к вложенному элементу Skyman jQuery 8 21.09.2011 20:02
Обращение к элементу внутри метода .ajax() roma86 jQuery 2 19.03.2010 20:52