как изменить значение document.createElement? - PullRequest
0 голосов
/ 01 июня 2011

Я устраняю неполадки, когда Java-скрипт создает веб-страницу.Он использует эту последовательность:

aTD=document.createElement("TH");
header.appendChild(aTD);

проблема в том, что в некоторой точке скрипта это выглядит так:

 aTD=document.createElement("<TH>");
 aTD.appendChild(document.createTextNode(a4Phrase.TOTAL));
 header.appendChild(aTD)

в IE это не одна проблема.Но в Firefox создание страницы на этом этапе завершается неудачно, поэтому отображается только половина страницы.В последние дни я пытался найти одно решение, но безуспешно.Итак, вот мой вопрос:

Как я могу изменить ( с помощью greasemonkey )

aTD=document.createElement("<TH>");

на

aTD=document.createElement("TH"); 

?

1 Ответ

1 голос
/ 01 июня 2011

Это похоже на грязный хак, и я полагаю, что ваша проблема может быть решена другим, более точным способом.Однако вы можете просто прокси document.createElement метод:

var ce = document.createElement;
document.createElement = function(el){
    if (el === '< TH>') {
        el = 'TH';
    }
    return ce.call(document, el);
};

var aTD=document.createElement("< TH>");
aTD;
...