Есть ли способ инициировать выполнение встроенного JavaScript внутри некоторого div из jquery? - PullRequest
0 голосов
/ 10 мая 2010

У меня есть какой-то контейнер на странице с встроенным JavaScript. Есть ли способ снова запустить его выполнение после того, как он был изначально запущен автоматически при загрузке страницы?

<div id="mydiv">
    <script type='text/javascript'>alert("trigger me again");</script>
</div>

Ответы [ 5 ]

3 голосов
/ 10 мая 2010

Вы можете попробовать:

eval($('script', $('#mydiv')).text());

Просто мысль

3 голосов
/ 10 мая 2010

Вам нужно сделать функцию:

<script type='text/javascript'>
function doSomething() {
    alert("trigger me again");
}
doSomething();  //Call the function immediately
</script>

Затем вы можете вызвать функцию снова где-нибудь еще:

doSomething();
0 голосов
/ 10 мая 2010

Полагаю, вы можете выбрать свой элемент и затем выполнить eval () код внутри.

Что-то вроде:

$('script').each(
   function() {
      eval($(this).text());
   }
);
0 голосов
/ 10 мая 2010

Что бы я сделал, это сделал бы этот встроенный вызов javascript функцией. Затем вы можете вызывать эту функцию снова и снова после загрузки страницы.

0 голосов
/ 10 мая 2010

Вы можете назначить его функции и установить событие таймера ... В javascript есть два типа таймеров (setTimeout и setInterval). Однако есть также несколько библиотек jQuery для таймеров событий .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...