关于IE中getElementsByClassName不能用的问题解决方法_javascript技巧
今天使用getElementsByClassName写了段小程序,满怀欣喜的准备去测试,在ff,谷歌等主流浏览器上测试都没问题,在IE9上也没问题,在IE6、8中测试的时候就出现问题了,浏览器报错。纠结了下代码,貌似没问题,果断找度娘。。。终于发现问题所在,然来是IE6、8中不支持getElementsByClassName这种方法。随后在网上搜索解决方法,找到了一个比较好的方法,是个老外写的一个方法,定睛一看居然是05年的问题了。。。先上代码:
*
Developed by Robert Nyman, http://www.robertnyman.com
Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/
var getElementsByClassName = function (className, tag, elm){
if (document.getElementsByClassName) {
getElementsByClassName = function (className, tag, elm) {
elm = elm || document;
var elements = elm.getElementsByClassName(className),
nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
returnElements = [],
current;
for(var i=0, il=elements.length; i
if(!nodeName || nodeName.test(current.nodeName)) {
returnElements.push(current);
}
}
return returnElements;
};
}
else if (document.evaluate) {
getElementsByClassName = function (className, tag, elm) {
tag = tag || "*";
elm = elm || document;
var classes = className.split(" "),
classesToCheck = "",
xhtmlNamespace = "http://www.w3.org/1999/xhtml",
namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
returnElements = [],
elements,
node;
for(var j=0, jl=classes.length; j
}
try {
elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
}
catch (e) {
elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
}
while ((node = elements.iterateNext())) {
returnElements.push(node);
}
return returnElements;
};
}
else {
getElementsByClassName = function (className, tag, elm) {
tag = tag || "*";
elm = elm || document;
var classes = className.split(" "),
classesToCheck = [],
elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
current,
returnElements = [],
match;
for(var k=0, kl=classes.length; k
}
for(var l=0, ll=elements.length; l
match = false;
for(var m=0, ml=classesToCheck.length; m
if (!match) {
break;
}
}
if (match) {
returnElements.push(current);
}
}
return returnElements;
};
}
return getElementsByClassName(className, tag, elm);
};
具体怎么使用可以去看他里面的使用方法。
使用这个方法之后,IE6、8中能显示了,但是还是有个随机的问题,有时刷新几次又会报错,暂时无解了。然后我想用jquery能不能解决这个刷新报错的问题,当然用jquery也能替代getElementsByClassName这个方法,具体怎么用这里就不作介绍了。然而事实终不能如人愿,刷新还是会有问题,而且报错是随机的,有时第一次加载过程中就报错,有时刷新几次才报错。大侠们。求解决。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Es ist kein Geheimnis, dass der Internet Explorer schon lange in Ungnade gefallen ist, aber mit der Einführung von Windows 11 kommt die Realität. Anstatt in Zukunft manchmal den IE zu ersetzen, ist Edge jetzt der Standardbrowser im neuesten Betriebssystem von Microsoft. Vorerst können Sie den Internet Explorer noch in Windows 11 aktivieren. Allerdings hat IE11 (die neueste Version) bereits ein offizielles Ruhestandsdatum, nämlich den 15. Juni 2022, und die Uhr tickt. Vor diesem Hintergrund ist Ihnen vielleicht aufgefallen, dass Internet Explorer manchmal Edge öffnet, und es gefällt Ihnen möglicherweise nicht. Warum passiert das also? existieren

Immer mehr Benutzer beginnen mit der Aktualisierung des Win11-Systems. Da jeder Benutzer unterschiedliche Nutzungsgewohnheiten hat, verwenden viele Benutzer immer noch den IE11-Browser. Was soll ich also tun, wenn das Win11-System den IE-Browser nicht verwenden kann? Unterstützt Windows11 immer noch ie11? Werfen wir einen Blick auf die Lösung. Lösung des Problems, dass Win11 den ie11-Browser nicht verwenden kann 1. Klicken Sie zunächst mit der rechten Maustaste auf das Startmenü und wählen Sie „Eingabeaufforderung (Administrator)“, um es zu öffnen. 2. Geben Sie nach dem Öffnen direkt „Netshwinsockreset“ ein und drücken Sie zur Bestätigung die Eingabetaste. 3. Geben Sie nach der Bestätigung „netshadvfirewallreset&rdqu“ ein

In letzter Zeit haben viele Win10-Benutzer festgestellt, dass ihr IE-Browser bei der Verwendung von Computerbrowsern immer automatisch zum Edge-Browser springt. Wie kann man also den automatischen Sprung zum Edge beim Öffnen des IE in Win10 deaktivieren? Lassen Sie diese Website den Benutzern sorgfältig vorstellen, wie sie beim Öffnen des IE in Win10 automatisch zum Rand springen und schließen. 1. Wir melden uns beim Edge-Browser an, klicken auf ... in der oberen rechten Ecke und suchen nach der Dropdown-Einstellungsoption. 2. Nachdem wir die Einstellungen eingegeben haben, klicken Sie in der linken Spalte auf Standardbrowser. 3. Abschließend aktivieren wir in der Kompatibilität das Kontrollkästchen, um ein erneutes Laden der Website im IE-Modus zu verhindern, und starten den IE-Browser neu.

Lösungen für IE-Verknüpfungen, die nicht gelöscht werden können: 1. Berechtigungsprobleme; 3. Softwarekonflikte; 6. IE-Probleme; 9. Überprüfen Sie den Zielpfad der Verknüpfung. 10. Berücksichtigen Sie andere Faktoren. 11. Wenden Sie sich an Fachleute. Detaillierte Einführung: 1. Klicken Sie mit der rechten Maustaste auf die Verknüpfung, wählen Sie „Eigenschaften“ und stellen Sie sicher, dass Sie über ausreichende Berechtigungen zum Löschen der Verknüpfung verfügen. Wenn nicht, können Sie versuchen, die Verknüpfung auszuführen usw .

Der 15. Juni 2022 ist der Tag, an dem Microsoft den Support für Internet Explorer 11 (IE11) beendet und sein Kapitel über Legacy-Browser abschließt. Das Unternehmen erinnert Nutzer bereits seit Längerem an dieses End-of-Life-Datum und fordert sie dazu auf, einen Umstieg auf Microsoft Edge zu planen. Microsoft bündelt IE11 mit Windows 8.1 als modernen Standard-Webbrowser für Windows. Obwohl er nie die (aktuellen) Höhen von Chrome erreichte, war er 2014 nach IE8 der am zweithäufigsten verwendete Desktop-Browser. Natürlich mit 20

Wie aktiviere ich die IE-Beschleunigungsfunktion? Wenn der IE zu langsam ist, um Webseiten zu öffnen, können wir darin den Hardwarebeschleunigungsmodus aktivieren. Viele Freunde berichteten, dass die Geschwindigkeit beim Öffnen von Webseiten bei Verwendung des IE-Browsers extrem langsam ist, was auch einen gewissen Einfluss auf unser Surfen im Internet hat. Ich möchte den Editor nur fragen, ob es eine Lösung gibt. In diesem Fall können Sie den Hardwarebeschleunigungsmodus des IE-Browsers aktivieren. Werfen Sie einen Blick unten! Um die Beschleunigungsfunktion im IE zu aktivieren, öffnen Sie den sicheren IE-Browser, klicken Sie auf das zahnradförmige „Einstellungen“-Symbol in der oberen rechten Ecke und wählen Sie „Internetoptionen“ zur Eingabe, wie in der Abbildung gezeigt. 2. Klicken Sie in der Tab-Navigation oben im Fenster „Internetoptionen“ auf „Erweitert“, wie in der Abbildung dargestellt. 3.

Wie deinstalliere ich IE9 von Win7? Computer können Aufgaben bei der Arbeit erledigen und können auch zum Ansehen von Fernsehsendungen verwendet werden. Genau wie beim Ansehen von Fernsehserien verwenden wir normalerweise Browser, um sie anzusehen. Da es immer mehr Browser gibt und ihre Funktionen perfekt sind, verwenden jetzt immer weniger Leute den Browser ie9 win7 So deinstallieren Sie den IE9-Browser vom System. So deinstallieren Sie den IE9-Browser von Win7. 1. Doppelklicken Sie zunächst, um MyPC zu öffnen, und wählen Sie, ob Sie das Programm deinstallieren oder ersetzen möchten. 2. Suchen Sie dann nach „ViewInstallUpdate“ und klicken Sie darauf. Darin finden Sie „Windows Internet Explorer 9“, dann klicken Sie zum Löschen mit der rechten Maustaste. Das Obige ist der Editor mit wi

Viele Benutzer sind es gewohnt, den Internet Explorer-Browser von Windows zu verwenden, stellen jedoch fest, dass der Internet Explorer-Browser nach dem Upgrade des Win11-Systems nicht im System gefunden werden kann. Wenn sie also wissen möchten, ob Win11 mit dem Internet Explorer-Browser geliefert wird, schauen wir uns das an Folgen Sie dem Editor, um es zu sehen Probieren Sie es einfach aus. Wird Win11 mit einem IE-Browser geliefert? Antwort: Win11 wird nicht mit einem IE-Browser geliefert. 1. Microsoft hat zuvor erklärt, dass das Win11-System nicht mehr über einen eigenen IE-Browser verfügen wird. 2. Wir können den IE-Modus jedoch über den Edge-Browser in Win11 aktivieren. 3. Klicken Sie zunächst auf die drei Punkte in der oberen rechten Ecke, wie im Bild gezeigt. 4. Klicken Sie anschließend im sich öffnenden Menü auf „Einstellungen“. 5. Suchen Sie dann in der linken Seitenleiste nach „Standardbrowser“ und geben Sie ihn ein. 6. Darin ist der IE-Modus zulässig
