Использование переменных в «Выполнить Javascript На Элементе»
-
Добрый вечер. Не могу разобраться как использовать ранее объявленные переменные внутри «Выполнить Javascript На Элементе»
Например хочу вернуть 1 или 0
Делаю что-то вроде [[SOME_LIST]].length == self.querySelectorAll('.thumb_wrap').length ? 1 : 0;Однако так не работает.
Пробовал смотреть что возвращает по отдельности каждая сторона выражения ([[SOME_LIST]].length и self.querySelectorAll('.thumb_wrap').length)
self.querySelectorAll('.thumb_wrap').length возвращает как и нужно кол-во элементов с указанным классом
А вот [[SOME_LIST]].length возвращает пустую строку, как я понял — исключение. Судя по всему это из-за того что тип установлен string. Если ставлю тип expression, то возвращается нужное число. Но в случае когда ставишь expression становится недоступна переменная self.
Как мне использовать переменные вида [[SOME_LIST]] в инструменте «Выполнить Javascript На Элементе» так чтобы они работали?
-
Я так понимаю это ты в if выставляешь условие?
[[SOME_LIST]].length == self.querySelectorAll('.thumb_wrap').length
Попробуй сделать в 3 блока, сперва
VAR_VARIABLE_1 = (VAR_SOME_LIST).length
потом
VAR_VARIABLE_2 = (VAR_SELF).querySelectorAll
а затем уже сравнение
[[VARIABLE_1]] == [[VARIABLE_2]]
Если делаешь Javascript на элементе, то сравниваешь уже полученный результат из переменной
[[VARIABLE_1]] == [[SAVED_SCRIPT_RESULT]]
-
@dobry.op Внутри Выполнить Javascript На Элементе переменные могут быть использованы только для чтения, но не для записи.
Так что получаете количество элементов в переменную, потом через Выполнить код изменяете длину списка.