2016-01-26 2 views
0

Так что я работаю над Usercript, и есть один важный шаг. Я пытаюсь найти самое легкое решение с тех пор, как я очень новичок в Javascript-кодировании ... Я пытаюсь выполнить/введите функцию, которая откроет указанный URL:Перенаправление URL-адресов из текста документа страницы

ПРИМЕР: Домашняя страница («http://www.EXAMPLE.com») (страница может быть открыта как «Window.open» = Blank или _self);

... когда родительский или (текущий) URL-адрес открыт ПРИМЕР: innner.href = ("www.EXAMPLE.com/new/01262016/blah/blah/blah");

... имеет текст на странице documnt HTML, который читает: Пример текста со страницы («www.EXAMPLE.com/new/01262016/blah/blah/blah») ;: «это конец страницы, пожалуйста, обновите вернуться на главную страницу»

(ТЕКСТ:. не реального ключевого слова, но хотите использовать фазу в качестве обнаружения для функции SetTimeout, чтобы вернуться обратно домой)

Любая помощь будет очень много, вы, ребята, очень изобретательны. Заранее спасибо.

ответ

0

Думаю, у меня есть суть вопроса. Это довольно сложная задача - отсканировать весь текстовый контент страницы для конкретных ключевых слов с помощью JavaScript. Однако, если ключевые слова появляются более одного раза (на нескольких страницах, которые не должны перенаправляться), ваши пользователи получат нежелательные результаты.

Простым решением было бы добавить атрибут class="last-page" на body -tag последней страницы и запустить функцию, которая проверяет это. Что-то вроде ....

HTML

<body class="last-page"><!--page content--></body> 

JS

window.onload = function() { 
    var interval = 5000; // five seconds 
    if (document.body.classList.contains('last-page')) { 
    setTimeout(function() { 
     window.location.assign('http://the-next-page.com/'); 
     }, interval); 
    } 
}; 

В качестве альтернативы, если у вас есть возможность обернуть указанный текст в однозначно идентифицирована html в тег, таких как ...

<span id="last-page">EXAMPLE TEXT</span> 

... то наличие этого тега может быть проверена при каждой загрузке страницы - аналогично приведенной выше функции:

window.onload = function() { 
    var interval = 5000; 
    if (document.getElementById('last-page') { 
    setTimeout(/* code as before */); 
    } 
}; 

Еще одно решение, чтобы проверить адрес страницы с переменной ...

window.onload = function() { 
    var finalURL = 'http://the-last-page.com/blah/...'; 
    if (window.location === finalURL) { 
    /* same as before */ 
    } 
}; 

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

+0

Добро пожаловать. :) –

+0

hahah да большое вам спасибо. Я обычно даю свой пост 24windows, это первый, я читаю это сейчас и буду уверен, что сделаю исправления. –

+0

Ok Итак, он не работал ... ни один из них. Я думаю, что это потому, что он не является .js, который я кодирую, но является usercript. моя кодировка в моем имени пользователя начинается с: == UserScript === Окно.разомкнут = вар urlsToLoad = [ SetTimeout = Функция GoToNextURL –