hallo again Interessierte,
@ alle - zur info:
mittlerweile konnte ich die drei verlinkten testcases auch auf einen
safari loslassen - das ergebnis war niederschmetternd ... auf den
ersten blick scheint es dort probleme mit den statischen array methoden
zu geben ... da muss ich also nochmal dranrumschrauben, bevor das modul
wirklich fuer allgemein praxistauglich erklaert werden kann :(
sieg - *es tut jetzt* auch in einem mir zur verfuegung stehenden safari 1.3.2!
das debuggen im safari ist echt eine qual, weil zeitraubend - und dann lagen
die fehler noch nicht einmal bei mir, sondern bei den lieben safari- und/oder
khtml-engine-programmierern:
so unterstuetzt mein testbrowser z.b. nicht die native JavaScript-core-methode
[RegExp.compile] - dem sprachkonzept sei dank, kann man diese methode ohne
grossen umstaende nachruesten:
~~~javascript if ((typeof RegExp.prototype.compile != "function") && (typeof RegExp.prototype.compile != "object")) {
RegExp.prototype.compile = function () {
return this.constructor.apply(this, arguments);
};
}
desweiteren tut mein test-safari zuersteinmal so, als implementierte er \*echte\*
[NodeList] objekte - `javascript:alert(document.getElementsByTagName("body"));`{:.language-javascript}
ergibt zum bsp: [object NodeList] - doch wenn er mit `(obj instanceof NodeList)`{:.language-javascript}
farbe bekennen soll, kneift er ... ,und ausserdem implementieren safari-eigene
[NodeList] objekte zwar die methode [item], die methode [namedItem] jedoch
nicht.
die quellcodes aller im ausgangsposting verlinkten dateien beruecksichtigen
jetzt diese eigenarten; die tests laufen, wie oben gerade erwaehnt, im mir
zur verfuegung stehenden safari auch anstandlos durch.
ich freue mich auch weiterhin auf feedback - so long - peterS. - pseliger@gmx.net
--
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - [Douglas Crockford](http://javascript.crockford.com/)
ie:( fl:) br:> va:( ls:& fo:) rl:| n3;} n4:} ss:} de:µ js:} mo:? zu:]