XML DOM previousSibling ιδιότητα
Ορισμός και χρήση
Η ιδιότητα previousSibling μπορεί να επιστρέψει τον κόμβο που βρίσκεται απευθείας πριν από έναν κόμβο (στο ίδιο επίπεδο του δέντρου)
Αν δεν υπάρχει αυτός ο κόμβος, τότε η ιδιότητα επιστρέφει null.
Γλώσσα:
nodeObject.previousSibling
Συμβουλές και σημειώσεις
Σημείωση:O Internet Explorer θα αγνοήσει τους κόμβους κενής κειμενικής γραμμής που δημιουργούνται μεταξύ κόμβων (π.χ., σύμβολο βρόχιας), ενώ το Mozilla δεν θα κάνει αυτό. Επομένως, στην παρακάτω παράδειγμα, θα χρησιμοποιήσουμε μια συνάρτηση για να ελέγξουμε τον τύπο του πρώτου υποκόμβου.
Ο τύπος κόμβου του στοιχείου κόμβου είναι 1, οπότε αν ο πρώτος υποκόμβος δεν είναι κόμβος στοιχείου, θα μετακινηθεί στον επόμενο κόμβο και θα συνεχίσει να ελέγχει αν ο κόμβος είναι κόμβος στοιχείου. Ολόκληρος ο διαδικασία θα συνεχιστεί μέχρι να βρεθεί ο πρώτος κόμβος στοιχείου. Με αυτόν τον τρόπο, μπορούμε να πάρουμε τη σωστή μέθοδο στο Internet Explorer και στο Mozilla.
Συμβουλή:Για περισσότερες πληροφορίες σχετικά με τις διαφορές μεταξύ του XML DOM των IE και του Mozilla browser, παρακαλώ επισκεφθείτε την DOM browser 章节.
παράδειγμα
Σε όλες τις παραδείξεις, θα χρησιμοποιήσουμε το αρχείο XML books.xmlκαι τη συνάρτηση loadXMLDoc().
Η παρακάτω κείμενη ενότητα μπορεί να αποκτηθεί από το στοιχείο <author> του XML έγγραφου:
//ελέγχει αν ο προηγούμενος αδελφός κόμβος είναι κόμβος στοιχείου
λειτουργία get_previoussibling(n)
{
var x=n.previousSibling;
while (x.nodeType!=1)
{
x=x.previousSibling
;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("author")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_previoussibling(x);
document.write("<br />Προηγούμενο同级κnotion: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
Έξοδος:
συγγραφέας = Giada De Laurentiis Προηγούμενο同级κnotion: τίτλος = Everyday Italian