Deerua about Coding -> Заметки с тегом «getElementById»

Блог о кодинге, автор Deerua

coding, javascript, css, html, php, jquery, mysql, deerua

Deerua about Coding

 Избранное

 Самые комментируемые за всю историю

 175 заметок ненаглядно

 Архив за 2010, 2009, 2008  год


 15 августа 2008, 11:42       более года назад

getElementById IE BUG  

var $ = function (id, doc) {
	if((id)&&((typeof id == "string")||(id instanceof String) ) ){
		if (!doc) { doc = document; }
		var ele = doc.getElementById(id);
		// workaround bug in IE and Opera 8.2 where
		// getElementById returns wrong element
		if (ele && (ele.id != id) && doc.all) {
			ele = null;
			// get all matching elements with this id
			eles = doc.all[id];
			if (eles) {
				// if more than 1, choose first
 				// with the correct id
				if (eles.length) {
					for (var i=0; i < eles.length; i++) {
						if (eles[i].id == id) {
							ele = eles[i];
							break;
						}
					}
				} // return 1 and only element
				else { ele = eles; }
			}
		}return ele;
	}return id; // assume it's a node
}

Теперь вместо doucment.getElementById(«somekrap») пишешь $(«somekrap»)­ устраняет много проблем, когда голимый ИЕ не видит Элемент по названию айди. Вернее он выберает не по Id а по Name

Ещё одна прелесть этого скрипта, можно сразу указать другой тип Документа, например iframe
var myIFrame = $("iframe_id").contentWindow.document;  
var div4id = $("div_from_frame",myIFrame).innerHTML;


Ужатый вариант:

 Комментировать…

 Теги: javascript   document   getElementById

Нужно создать сайт на 1С-Битрикс(Bitrix)?
Работает на движке e2 Selecta * All sources code was highlighted with w3club Highlighter.
deer.org.ua © 2008—2010 Vitaliy Bogdanets Deerua