Можно ли получить доступ к неразобранному тексту CSS веб-страницы? - PullRequest
3 голосов
/ 17 декабря 2009

Я хочу проанализировать CSS-файлы, которые загружены с HTML-страницей, но я не хочу делать вызовы AJAX для перезагрузки CSS-файлов, которые уже были загружены. Есть ли какой-нибудь способ получить доступ к страницам без разбора CSS-текста?

Например, это позволило бы получить доступ к объявлениям -moz- * в Safari.

Ответы [ 4 ]

5 голосов
/ 17 декабря 2009

Вы можете загрузить свой CSS, используя AJAX.

  1. Загрузите ваш CSS
  2. Разбор CSS
  3. Добавление CSS в DOM (полностью или частично)

Это можно сделать с помощью LazyLoad :

"LazyLoad крошечный (всего 1541 байт минимизированный), JavaScript без зависимостей библиотека, которая делает это очень легко загружать внешние файлы JavaScript и CSS по требованию. "

2 голосов
/ 17 декабря 2009

Я думаю, что вы хотите посмотреть на document.styleSheets .

1 голос
/ 17 декабря 2009

Вы действительно пытались получить его с помощью AJAX?Скорее всего, он будет загружен из кеша браузеров.

0 голосов
/ 17 декабря 2009

Иван сказал:

Вы действительно пытались получить его с помощью AJAX? Скорее всего, он будет загружен из кеша браузеров.

Мазняк сказал:

Загрузка с помощью AJAX всегда приводит к тому, что как минимум HTTP-запрос должен быть отправлен и возвращен, плюс время для загрузки файла CSS, если код ответа не похож на 304. Я действительно не хочу никаких дополнительных задержек, поскольку Я хочу изменить некоторые стили до загрузки страницы

Я говорю ... почему бы просто не переопределить стили, которые вы хотите изменить? Например:

/* here is your normal css: styles.css */
body {
    color: black;    
}

/* and you want to switch to red text instead... */

/* dynamically add this on page load */
body {
    color: red !important;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...