contains für Netscape
Uwe
- javascript
Hallo,
ich habe eine neue Aufgabe bekommen. Seitenweise IE JavaScript-Code Netscape kompatibel zu machen. Ist eigentlich kaum ein Problem, nur die Funktion contains (http://selfhtml.teamone.de/javascript/objekte/all.htm#contains) bereitet mir Kopfzerbrechen. Der Code selbst soll eigentlich nicht großartig verändert werden. Also suche ich nach einer halbwegs einfachen Lösung zu einen für Netscape 4 und zum anderen Mozilla/Netscape 6 bzw. 7.
Leider bin ich noch nicht sehr weit gekommen mit meinen Versuchen.
Hat hier jemand vielleicht eine Idee oder einen Denkanstoß, in welche Richtung man was machen könnte?
Vielen Dank für jeden Hinweis.
Uwe
Hallo,
ich habe eine neue Aufgabe bekommen. Seitenweise IE JavaScript-Code Netscape kompatibel zu machen. Ist eigentlich kaum ein Problem, nur die Funktion contains (http://selfhtml.teamone.de/javascript/objekte/all.htm#contains) bereitet mir Kopfzerbrechen. Der Code selbst soll eigentlich nicht großartig verändert werden. Also suche ich nach einer halbwegs einfachen Lösung zu einen für Netscape 4 und zum anderen Mozilla/Netscape 6 bzw. 7.
Leider bin ich noch nicht sehr weit gekommen mit meinen Versuchen.
Für Netscape 4.x fällt mir nur ein, das der sowieso Layer nur ansprechen kann, wenn diese positioniert sind und in diesem Falle, ist der Layer ein document.
Also sollte folgendes im NC 4.x in etwa klappen
document.layers.prototype.contains = contains;
function contains(id)
{
if(!this.document) return null;
return this.document.layers[id];
}
Hab aber grad keinen NC griffbereit.
Struppi.
Hallo,
beim IE6 und Netscape 6 klappt es so:
<html><head><title>Test</title>
<script type="text/javascript">
<!--
function Test() {
var Hdl = eval ( document.getElementById("Absatz") );
if (Hdl) alert(Hdl.innerHTML);
}
//-->
</script>
</head><body id="dieseDatei">
<p id="Absatz">Ein Text</p>
<a href="javascript:Test()">Test</a>
</body></html>
Gruß
Nochmal Hallo,
habe das Problem wohl nicht so ganz richtig begriffen. Aber wie
waere es damit:
<html><head><title>Test</title>
<script type="text/javascript">
<!--
function Test() {
var Hdl = eval ( document.getElementById("dieseDatei") );
if (! Hdl) return 0;
var Ergebnis = Hdl.innerHTML.search(/Absatz/);
if (Ergebnis != -1) alert("Gefunden!");
}
//-->
</script>
</head><body id="dieseDatei">
<p id="Absatz">Ein Text</p>
<a href="javascript:Test()">Test</a>
</body></html>
Gruß
Nochmal Hallo,
habe das Problem wohl nicht so ganz richtig begriffen. Aber wie
waere es damit:<html><head><title>Test</title>
<script type="text/javascript">
<!--
function Test() {
var Hdl = eval ( document.getElementById("dieseDatei") );
Warum eval????
Es gibt keinen Grund eval zu benutzen, ausser um zur Laufzeit generierten Code auszuführen und das tusr du hier nicht. Es macht deine Programme langsam, fehleranfällig und sie stürzen schneller ab.
Struppi.