Automatisch hinzugefügte xmlns-Attribute entfernen

Ich versuche eine einfache Such- und Hervorhebungsfunktion in auszuführenJavascript das sucht nach einem Stück Text. DasXHTML Das Tag, mit dem dieses Textstück vorkommt, wird auch als Argument für zusätzliche Hilfe beim Auffinden dieses Textes angegeben.

Das XHTML, auf dem ich diese Funktion teste:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta content="application/xml+xhtml;charset=UTF-8" />
<script src="searcher.js" type="text/javascript"></script>
<script src="jquery-2.0.2.min.js"> </script>
<title>Building your resume</title>
</head>
<body id="highlightbegin">
<h1>Building your resume</h1>

<div> <input name="input" type="button" value="Highlight3" onclick="javascript:searcher('&lt;h1&gt;','Building your resume', '&lt;h1&gt;Building your resume', 'resume');" /> </div>

</body>
</html>  

Der Funktionssucher in searcher.js:

function searcher(tag, text, tagText, word) {

    //simple search.
    console.info(word + " to be searched for in " + text + " with tag text = " + tagText);

    //get old html.
    var oldHTML = document.getElementById("highlightbegin").innerHTML;

    //get regexp.
    var regexp = new RegExp(tagText, 'g');

    var match = oldHTML.match(regexp);
    console.info(text + " found " + match.length + " times.");
}  

Das Ausführen derRegExp, Match kehrt zurücknull. Weitere Untersuchungen ergeben, dass das Tag<h1>Building your resume</h1> wird<h1 xmlns="http://www.w3.org/1999/xhtml">Building your resume</h1> was bewirkt, dass diematch Funktion, um zurückzukehrennull. Meine Fragen:

Warum ist derxmlns Attribut automatisch hinzugefügt?Gibt es eine Möglichkeit, das Hinzufügen des Attributs zu verhindern?Welchen Tags wird dieses Attribut hinzugefügt? Ist es sicher anzunehmen, dass es zu jedem Tag hinzugefügt wird?Handelt es sich um ein browserspezifisches Problem oder ist dieses Verhalten in allen Browsern zu erwarten?

BEARBEITEN:
Eine Beobachtung:
1. Wenn ich das hinzufügexmlns Attribut auf diebody taggen und auf alle Inhalte zugreifen mitouterHTML (var oldHTML = document.getElementById("highlightbegin").outerHTML;), haben seine untergeordneten Elemente nicht diexmlns Attribut.
Meine Fragen:
1. Kann das OuterHTML Element bearbeitet werden (mitJavascript) und ersetzt?
2. Ist die obige Beobachtung konsistent (jedes Mal gesehen)?outerHTML wird aufgerufen) oder ist es implementierungsabhängig?
3. Ist es das?Javascript das fügt diexmlns Attribut automatisch oder der Browser?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage