XML DOM firstChild کیوکشن
تعریف اور استعمال
firstChild
کیوکشن واپس فراہم کرتی ہے جو مستند کا پہلا ذیلی آئیٹم ہوتا ہے۔
مقام نویسی
documentObject.firstChildتوجہ:Firefox اور زیادتر بروسر کسانی کے لئے خالی یا نیو لائن کو تکنیکل آئیٹم کے طور پر دیکھتا ہے جبکہ Internet Explorer نہیں دیکھتا ہے۔ اس لئے نیچے کے مثال میں، ہم ایک فونکشن استعمال کرتے ہیں تاکہ پہلے ذیلی آئیٹم کا آئیٹم کا تیپ چکے۔
گرههای عنصر nodeType 1 دارند، بنابراین اگر اولین فرزند گره عنصر نیست، به گره بعدی حرکت میکند و بررسی میکند که آیا گره آینده گره عنصر است یا خیر. این کار تا زمانی که اولین گره (باید گره عنصر باشد) پیدا شود ادامه دارد. به این ترتیب، نتایج در همه مرورگرها صحیح هستند.
توجه:برای اطلاعات بیشتری در مورد تفاوتهای بین مرورگرها، بخش DOM مرورگر در آموزش XML DOM را ببینید.
مثال
مثال 1
این کد "books.xml" را به xmlDoc بارگذاری میکند و نام گره اولین فرزند و نوع گره آن را نمایش میدهد:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); // بررسی اینکه اولین گره آیا گره عنصر است یا خیر function get_firstchild(n) { var x = n.firstChild; while (x.nodeType != 1) { x = x.nextSibling; } return x; } function myFunction(xml) { var xmlDoc = xml.responseXML; var x = get_firstchild(xmlDoc); document.getElementById("demo").innerHTML = "نام گره: " + x.nodeName + " (nodetype: " + x.nodeType + ")<br>"; }
مثال 2
وصول به آخرین فرزند مستند:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); // بررسی اینکه آخرین گره آیا گره عنصر است یا خیر function get_lastchild(n) { var x = n.lastChild; while (x.nodeType != 1) { x = x.previousSibling; } return x; } function myFunction(xml) { var xmlDoc = xml.responseXML; // وصول به آخرین فرزند مستند var x = get_lastchild(xmlDoc); // وصول به آخرین فرزند ریشه var y = get_lastchild(xmlDoc.documentElement); document.getElementById("demo").innerHTML = "نام گره: " + x.nodeName + " (nodetype: " + x.nodeType + ")<br>" + "نام گره: " + y.nodeName + " (nodetype: " + y.nodeType + ")<br>"; }