Мы все знаем, что делает <script src="/something.js"></script>
. Этот файл загружается на страницу и запускается сценарий.Изменение поведения браузера по умолчанию для интерпретирующего тега сценария
Есть ли способ переопределить поведение по умолчанию для интерпретации <script>
элементов?
Я хочу, чтобы один и тот же синтаксис (<script src='...'></script>
), который будет только получить код от something.js
(вероятно, через XHR/JQuery AJAX) и передать его в foo (...) {...}
функции. Тогда я буду заботиться о том, что я буду с этим делать.
Для выяснения вопроса:
Я могу легко создать альтернативу псевдо <script>
тегов с помощью:
<div data-script-src="/1.js"></div>
<div data-script-src="/2.js"></div>
<div data-script-src="/3.js"></div>
<div data-script-src="/4.js"></div>
, а затем в сторону Js я хотел бы сделать:
var $scripts = $("[data-script-src]")
, scriptContents = [];
(function loadInOrder (i) {
if (!$scripts[i]) { alert("Loaded"); }
$.ajax($($scripts[i]).attr("data-script-src"), function (data) {
scriptContents[i] = data;
loadInOrder(++i);
});
})(0);
Но как могу ли я заменить div[data-script]
на <script>
? Как заставить браузер NOT загрузить теги <script>
, которые имеют атрибут data-load="false"
, например?
Не могли бы вы использовать метод JQuery getScript для достижения тех же результатов? http://api.jquery.com/jquery.getscript/ – Askanison4
Я думаю, вы используете его для анализа ... Предположим, что другие сайты :). Может быть, некоторые глубокие настройки браузера? Или загрузите сайт, используя, например, wget, и замените
Я не уверен, если это будет отвечать на Ваш вопрос, но без каких-либо дополнительных данных, я могу предложить:
Создайте свой собственный PHP-файл, который будет работать как своего рода ворота. Тогда
И затем, если необходимо добавить свой тип реальных скрипта, который будет искать MyScript тегов и запустить Javascript код ...
Вы можете использовать Div элемент, а также (если скрипты загружен в корпус, и вам необходима проверка):
Если вам нужна дополнительная помощь, напишите. И, пожалуйста, не спускайте вниз, так как вопрос немного затуманивается :).
PS. Я не знаю, являются ли это вашими сайтами или сайтами из Интернета, что вы хотите, чтобы поведение по умолчанию было перезаписано. Поэтому всегда будьте осторожны с тем, что вы «file_getting_contents», потому что это будет отражено непосредственно в вашем браузере ... :).
источник
2014-01-23 16:13:23
Я ищу решение для клиентской стороны ... –
Хорошо. Я буду думать больше, может быть, что-то придет в голову :). С наилучшими пожеланиями. –