DCSIMG
What is new in IE9 - Overlapping Tags - שלמה גולדברג (הרב דוטנט)

שלמה גולדברג (הרב דוטנט)

מרצה בסלע ויועץ בעולם ה - net.

What is new in IE9 - Overlapping Tags

 

מה ההתנהגות לפי התקן כשתגים מקוננים אחד בתוך השני.

 
הדוגמא לקוחה מה - MSDN
 
 
מה קורה כשיש לנו את ה - html הבא
 

You should be aware of how <b>this <i>affects</b> script</i>.

 
כמובן שהמילים this affects יופיעו במודגש והמילים affects script יופיעו בהטייה.
 
אבל כשננסה לגשת אליהם בסקריפט, למשל הרצת הקוד הבא
 

var elms = document.getElementsByTagName("i");

 
ב - IE8 יוחזר אלמנט אחד שה - innerText שלו הוא: affects script
ואילו ב - IE9 יוחזרו שני אלמנטים (כל מילה היא אלמנט) מכיוון שהתג i מקונן ב - b.
 
 
(אם היו שואלים אותי - ההתנהגות של IE8 נראית לי יותר הגיונית, חבל שלא אני קובע את התקן)
 
 
הרצת הקוד הבא
 
 

function load() {

    var elms = document.getElementsByTagName("i");

    alert(elms.length);

    for (var i = 0; i < elms.length; i++) {

        var elm = elms[i];

        alert(elm.innerText);

        if (elm.parentNode.tagName.toLowerCase() == "b")

            elm.style.color = "red";

    }

}

 
ב - IE8 תצבע כמובן באדום את סוף המשפט ואילו ב - IE9 רק המילה affects תצבע באדום.
שלח תגובה

(שדה חובה)  

(שדה חובה)  

(אופציונלי)

(שדה חובה) 

Please add 8 and 1 and type the answer here:


Enter the numbers above: