vaskadogana, было бы намного лучше, если бы вы смогли либо дать свой код, либо его аналог, выкинув все лишнее (и приватное), на котором это можно воспроизвести.
Griboks, в вопросе нигде не было сказано, что текст в кавычках проблема для парсера, но упоминалось, что без разбора самого js это станет проблеммой. Т.е. если как раз таки не парсить js
у вас несовместим код немного. Он вернет последний выбранный пункт. А код выше - первый выбранный. Да и ходит он у вас в любом случае по всему массиву.
Wexter, адресс серый и я так понял это основная проблема (сожержимое firewall могу дать, если еще актуально). Проверял и из сети с микротиком и вне ее - результат тот же.
простые изменения типа перестоновки, добовления, не трогают этот кеш
Не могли бы объяснить, на основании чего, вы делаете такой вывод? В идеале конечно код или хотя бы объяснение словами. Если вы вдруг используете (не известно откуда взявшийся) метод isGetElementByIdCacheEmpty (или что-то вроде того) буду рад увидеть ссылку на его спецификацию! (возможно там рядом лежит clearGetElementByIdCache :) )
habrdima, я вам отвечу: нет такой возможности в DOM API (насколько мне известно и, как видно из других ответов - не только мне). Но, что более важно, то что вы хотите ее найти говорит о том, что вы скорее всего делаете что-то "не так". Здесь люди пытаются выудить у вас вашу реальную задачу, чтобы подсказать, как ее можно (и скорее всего нужно) решать.
Кстати, по вашей ссылке на учебник, кэшируется querySelector, а не getElementById.