У меня есть страница A с несколькими контейнерами, в каждый из которых я загружаю содержимое страницы B. Страница B состоит из некоторого HTML и Javascript в тегах <script>
.
Теперь мне нужно настроить JSвстроенный в страницу B - пусть он знает узел DOM, в который он был загружен.
Обработка на стороне сервера с параметрами URL и т. д., к сожалению, не подходит.
Упрощенный пример - страница A:
<div id="container1"></div>
<div id="container2"></div>
<script type="text/javascript">
$('#container1').load('pageB.html');
$('#container2').load('pageB.html');
</script>
Страница B:
<p>Lorem ipsum</p>
<script type="text/javascript">
(function(){
alert('I have been embedded into container #???');
})();
</script>
Я вижу два основных способа добиться этого:
- передать информацию со страницы A на страницу B
- чтобы скрипт на странице B сам определил свою позицию
Для 1 .: есть ли способ выполнить встроенный JS, загруженный через AJAX, в определенной привязке / изменить область действияthis
на странице B?
Для 2 .: существует ли кросс-браузерный способ получения ссылки на текущий исполняемый узел <script>
?Что-то вроде геккона document.currentScript
?