Как я могу использовать мой тот же код JavaScript на недавно загруженной странице (из перенаправления) - PullRequest
1 голос
/ 07 марта 2012

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

<html>
<head>
<title>Benchmark</title>
<script type="text/javascript">
function loadUrl(newLocation)
{
  window.location = newLocation;
  window.onload=pageScroll;
}


function pageScroll() {
        window.scrollBy(0,50); // horizontal and vertical scroll increments
        scrolldelay = setTimeout('pageScroll()',100); // scrolls every 100 milliseconds
}
</script>
</head>
<body>
<a href="javascript:void" onclick="loadUrl('anysite.com'); return false;">link-1</a>
</body>
</html>

Я не дошел до задней страницы перенаправления, но это на самом деле не имеет значения.Спасибо!

1 Ответ

2 голосов
/ 08 марта 2012

Существует ряд проблем, которые мешают этому работать:

  1. Когда вы устанавливаете местоположение окна на новый URL-адрес (независимо от того, является он внешним или нет), JavaScript на текущей странице перестает выполняться. Он не будет иметь доступа к новой странице, поскольку он был полностью заменен (выгружен). Итак, это означает, что ваш код "window.onload" никогда не будет вызван. Новая страница теперь активна.
  2. Если вы попробовали подход iframe и загрузили внешнюю страницу в iframe, это тоже не сработает, поскольку ваш код не может получить доступ к внутренней веб-странице (и функции scrollBy), если веб-сайт находится в другом домене. Вы можете прочитать this для получения дополнительной информации об этой функции безопасности. Если ваша внешняя страница с веб-сервера: www.example.com, а внутреннее содержимое - с www.microsoft.com, сценарии (и код прокрутки) на www.example.com не смогут прокрутить документ. ,

Существует ряд свободно доступных инструментов сценариев / автоматизации, которые могут обеспечить лучшее и 100% надежное моделирование пользователя. Например, из Telerik . Возможно, вы захотите взглянуть на них в зависимости от того, чего вы пытаетесь достичь.

...