Нет, нет способа Java
проверить все возможные пути кода для программы, чтобы определить, была ли инициализирована переменная или нет, поэтому она берет безопасный маршрут и предупреждает вас.
Нет, вам придется инициализировать вашу переменную, чтобы избавиться от этого.
Первая строка должна быть:
if (element.parent('a').length > 0)
Предполагая, что элемент
на самом деле является объектом jQuery:
if (!element.parent().is("a")) {
element.wrap("<a>")
}
element.parent().attr("href", link);
Если элемент
является Узел DOM:
if (!$(element).parent().is("a")) {
$(element).wrap("<a>")
}
$(element).parent().attr("href", link);
Ваш код анализируется как вызов element.parent
с аргументом 'a'.length
.
Следовательно, он эквивалентен element.parent (1)
, что является недопустимым вызовом.
Вам нужно получить длину объекта jQuery, переместив .length
после )
, например:
if (element.parent('a').length > 0)
Кроме того, это не будет работать, если элемент
вложен в какой-то другой тег, который сам находится в теге
.
Вместо этого вы можете позвонить ближайшему
.