Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

IE workaround für getElementsByName

Frage Entwicklung Webentwicklung

Mitglied: Gushiken

Gushiken (Level 1) - Jetzt verbinden

08.10.2008, aktualisiert 13.10.2008, 4457 Aufrufe, 2 Kommentare

Unter dem IE funktioniert document.getElemetsByName() ja bekannterweise etwas anders als unter dem FF. Da ich das aber beim entwickeln meines aktuellen Projektes nicht wusste hab ich das leider nicht beachtet...

Da es zu aufwändig wäre jedem input eine ID zuzuordnen damit der IE sie auch findet, würde ich gern ein workaround schreiben mit dem der IE die Elemente auch mit dem namen finden kann. Workaurounds gibt es zwar und ich hab auch schon eins eingebaut, aber das ist etwas viel zu langsam da ich die Funktion ca 100 - 150x aufrufe...


Hier also erstmal das aktuelle Workaround:

getName(name,pos,tag)
{
if(!tag){
tag = '*';
}
var elems = document.getElementsByTagName(tag);
var res = []
for(var i=0;i<elems.length;i++){
att = elems[i].getAttribute('name');
if(att == name) {
res.push(elems[i]);
}
}
return res[pos];
}

Ich brauche immer nur ein Element also übergebe ich die POS in dem Array und gebe dann genau dieses Element zurück.

Hat vllt irgendeiner von euch eine schnellere Lösung?? In den meisten Fällen ist der Name sogar eindeutig, vielleicht kann man dadurch noch etwas rumtricksen...

Gruß,
Gushiken
Mitglied: Gushiken
08.10.2008 um 13:27 Uhr
okay, ich bin schonmal einen Schritt weiter... und konnte die Ladezeit des Aufrufs meines Formulars von ca30s (!!!) auf ca 14s reduzieren indem ich aus der for()-Schleife rausspringe sobald ich ein Element mit dem Namen gefunden habe, funktioniert soweit ganz gut.
Allerdings sind diese 14s immernoch viel zu lang... 10s weniger und ich kann damit leben, aber 14s sind untragbar...

naja... vielleicht fällt euch ja noch was ein wie ich die Elemente anders ansprechen kann...

Gruß, Gushiken
Bitte warten ..
Mitglied: Gushiken
13.10.2008 um 10:27 Uhr
okay, ich hab da noch eine andere Möglichkeit gefunden die Elemente anzusprechen. Das ganze funktioniert im IE7 ganz gut, allerdings nicht mit allen Elementen... Warum kann ich nicht sagen.

Man kann viele Element im IE einfach über document.all['name'] oder document.all.name ansprechen. Ist ein Element dort vorhanden ist es wesentlöich schneller es so aufzurufen.
Bitte warten ..
Ähnliche Inhalte
Webbrowser
Firefox 52 und Java (Workaround) (12)

Tipp von ChriBo zum Thema Webbrowser ...

Monitoring
gelöst Nagios CheckMK Hostmonitoring hinter NAT - Workarounds (2)

Frage von istike2 zum Thema Monitoring ...

Windows 10
gelöst Applocker-Bug in Win10-1703 - Workaround gesucht (12)

Frage von DerWoWusste zum Thema Windows 10 ...

Exchange Server
gelöst OWA funktioniert nur im IE (18)

Frage von ketanest112 zum Thema Exchange Server ...

Neue Wissensbeiträge
Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Erkennung und -Abwehr

Infineon TPMs unsicher! Bitlocker ggf. angreifbar

(4)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(7)

Information von Dobby zum Thema Firewall ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...