Поскольку следующая строка дает вам ошибку:
$(this).html($(this).html().replace(avidno,'<span id=avidlocal>AvidTrak Tracking Number</span>'));
, вы должны разбить ее так, чтобы в каждой строке вызывался только один метод.Это позволит вам дополнительно изолировать ошибку.Например:
var obj = $(this);
var currentHTML = obj.html();
var newHTML = currentHTML.replace(avidno,'<span id=avidlocal>AvidTrak Tracking Number</span>');
Если проблема заключается в строке var currentHTML
, то $ (this), вероятно, по какой-то причине не определено.Или, возможно, вам нужны кавычки вокруг имени id "avidlocal".Трудно сказать, так как в конце концов это ошибка IE, и я не вижу ничего конкретного, что, как я знаю, не работает в IE.
В качестве последнего замечания я настоятельно рекомендую вашему другу найтилучший способ достичь того, к чему он стремится.$ ('*'). Каждый будет проходить через каждый элемент на странице.Неужели у вашего друга нет никакого способа создания HTML, который позволял бы более легко заменять текст «avidno», то есть более легкий доступ через jQuery (через класс / id), чем через цикл по всему и проверку наличия дочерних узлов?