Присвоение переменной в динамической презентации
Присвоение переменной в динамической презентации
Ситуация такая. Есть динамическая презентация, в которой в зависимости от страницы браузера, например site1.ru и site2.ru, нужно делать разные действия. подробней... Если открылся site1.ru нужно делать один блок команд если site2.ru, то другой блок команд.
Не знаю как прописать это в динамической презентации.
пробовал вот так
команда 1
команда 2
var page=window.location.href;
if(page=='site1.ru') {
команда 3
команда 4
}
if (page=='site2.ru'){
команда 5
команда 6
команда 7
}
команда 8
и т.д....
- не работает(( Выполняются команды которые идут до var page=window.location.href;
Надеюсь понятно объяснил суть.
Подскажите пожалуйста как это сделать?
Спасибо!
Не знаю как прописать это в динамической презентации.
пробовал вот так
команда 1
команда 2
var page=window.location.href;
if(page=='site1.ru') {
команда 3
команда 4
}
if (page=='site2.ru'){
команда 5
команда 6
команда 7
}
команда 8
и т.д....
- не работает(( Выполняются команды которые идут до var page=window.location.href;
Надеюсь понятно объяснил суть.
Подскажите пожалуйста как это сделать?
Спасибо!
Re: Присвоение переменной в динамической презентации
И не будет, т.к. ни одно условие не верно. Откройте для себя indexOf
Re: Присвоение переменной в динамической презентации
Вы имеете ввиду, что я написал site1.ru а не http://site1.ru? Это то я понимаю, просто так написал. Но дело то в том, что презентация выполняет только те команды, которые идут перед var page=window.location.href;. После команды не выполняются, даже не выводятся в журнал программы тестирования.promot писал(а):И не будет, т.к. ни одно условие не верно. Откройте для себя indexOf
- Support
- Служба поддержки
- Сообщения: 4553
- Зарегистрирован: 08 фев 2009, 19:24
- Откуда: JetSwap
- Контактная информация:
Re: Присвоение переменной в динамической презентации
Если это все записано в одном скрипте, а открытую страницу следует проверять только после выполнения первых двух команд, то это неудивительно, ведь скрипт выполняется весь сразу.
Соответственно нужно создать команду вставки скрипта, которая будет отрабатывать после первых двух команд, затем уже вставлять остальные команды при необходимости.
Ну и кроме того, следует все-таки проверить точные адреса страниц, поскольку:
Соответственно нужно создать команду вставки скрипта, которая будет отрабатывать после первых двух команд, затем уже вставлять остальные команды при необходимости.
Ну и кроме того, следует все-таки проверить точные адреса страниц, поскольку:
promot писал(а):И не будет, т.к. ни одно условие не верно. Откройте для себя indexOf
С уважением, Служба поддержки.
http://www.jetswap.com
http://www.jetswap.com
Re: Присвоение переменной в динамической презентации
Я имею ввиду, что адрес, возвращенный window.location.href, может быть совсем не тот, что вы ожидаете и его искать нужно по неизменяемой части. К тому же некоторые символы кодируются в формате URL как %XX и неизвестно, что там в window.location.href будет. Попробуйте его в лог вывести.
Re: Присвоение переменной в динамической презентации
Никто так и не помог мне
Можно было бы сделать так, но не работает:
var cmdname="script";
var cmdtime=2;
var cmdparam="alert('prs::<get(key)>::setvar::page='+window.location.href";
alert("prs::" + prskey + "::add::" + cmdname + "::" + cmdtime + "::" + cmdparam);
if(<getvar(page)>=='http://site1.ru'){
//тут какие-то команды
}
else if(<getvar(page)>=='http://site2.ru'){
//тут какие-то команды
}
для проверки пробовал воспользоваться следующим скриптом. С числовыми переменными он работает, но со строковыми не работает:
var a=0;
var v=prompt("prs::" + prskey + "::"+a);
if(v==0){
// команды
}
else if(v==1){
// команды
}
Подскажите пожалуйста, как присвоить переменной значение javascript-a, в динамической презентации без использования команды setvar?
Можно было бы сделать так, но не работает:
var cmdname="script";
var cmdtime=2;
var cmdparam="alert('prs::<get(key)>::setvar::page='+window.location.href";
alert("prs::" + prskey + "::add::" + cmdname + "::" + cmdtime + "::" + cmdparam);
if(<getvar(page)>=='http://site1.ru'){
//тут какие-то команды
}
else if(<getvar(page)>=='http://site2.ru'){
//тут какие-то команды
}
для проверки пробовал воспользоваться следующим скриптом. С числовыми переменными он работает, но со строковыми не работает:
var a=0;
var v=prompt("prs::" + prskey + "::"+a);
if(v==0){
// команды
}
else if(v==1){
// команды
}
Подскажите пожалуйста, как присвоить переменной значение javascript-a, в динамической презентации без использования команды setvar?
Re: Присвоение переменной в динамической презентации
Возможно я не прав, но скрипт работает так
1) вставляем скрипт alert('prs::<get(key)>::setvar::page='+window.location.href(тут пропустил скобку, но проблема не в этом)
2) проверяем условие <getvar(page)> == (не знаю как в js , но т.к. как переменной page нет!!! вернет false) т.е. ни одно из условий не выполнится.
3)присваиваем переменной page window.location.href(т.е. эта команда выполнится после всех)
Поэтому скрипт и не работает. Как проверить( не совсем точно но...): else if замени на else
1) вставляем скрипт alert('prs::<get(key)>::setvar::page='+window.location.href(тут пропустил скобку, но проблема не в этом)
2) проверяем условие <getvar(page)> == (не знаю как в js , но т.к. как переменной page нет!!! вернет false) т.е. ни одно из условий не выполнится.
3)присваиваем переменной page window.location.href(т.е. эта команда выполнится после всех)
Поэтому скрипт и не работает. Как проверить( не совсем точно но...): else if замени на else
Re: Присвоение переменной в динамической презентации
хотя нее.
Такая проверка: после команд
добавь команду остановки презентации(посмотри в хелпе точно не помню)
и тестировании презентации посмотри на вкладке переменные (есть ли page) .
Условие точно правильное?
window.document.location.href возвращает полный урл со страницей(пример http://mail.ru/regisr.php). Если проверка только по сайту то используй window.document.locatio.hostname, тоже самое и с www.
Такая проверка: после команд
Код: Выделить всё
var cmdname="script";
var cmdtime=2;
var cmdparam="alert('prs::<get(key)>::setvar::page='+window.location.href";
alert("prs::" + prskey + "::add::" + cmdname + "::" + cmdtime + "::" + cmdparam);
и тестировании презентации посмотри на вкладке переменные (есть ли page) .
Условие точно правильное?
window.document.location.href возвращает полный урл со страницей(пример http://mail.ru/regisr.php). Если проверка только по сайту то используй window.document.locatio.hostname, тоже самое и с www.
Re: Присвоение переменной в динамической презентации
Все я написал правильно, только, как сказал суппорт, весь скрипт выполняется сразу и программа приступает к выполнению. Нужно чтобы команда определения хоста шла как бы последовательно что ли.
А насчет проверки страницы, я проверял, во вкладке переменные действительно есть переменная page и ее значение соответствует одному из условий.
Нужна какая-то команда которая после нужной команды определит урл страницы и потом ее можно будет использовать в условии if-else
Нужно определить урл страницы без использования команды вставки скрипта, а просто одной строчкой, скриптом, который выполнится после нужной команды....
А насчет проверки страницы, я проверял, во вкладке переменные действительно есть переменная page и ее значение соответствует одному из условий.
Нужна какая-то команда которая после нужной команды определит урл страницы и потом ее можно будет использовать в условии if-else
Нужно определить урл страницы без использования команды вставки скрипта, а просто одной строчкой, скриптом, который выполнится после нужной команды....
Re: Присвоение переменной в динамической презентации
а если подгрузить второй скрипт и передать ему переменную page, и во втором скрипте вставить условие
Пример:
Пример:
Код: Выделить всё
var cmdname="script";
var cmdtime=2;
var cmdparam="alert('prs::<get(key)>::setvar::<dls(http://test.ru/script2.js?page='+window.location.href+')>";
alert("prs::" + prskey + "::add::" + cmdname + "::" + cmdtime + "::" + cmdparam);