выполнение функции по url
Всем привет!
Общем у меня следующая проблема Мне нужно передать параметры в javascript через get-url Мы находимся на странице site.ru/page нажимаем на ссылку и переходим на site.ru/page?modal=true&page=me.html при этом выполняется функция modal() - она уже готова мы можем смело добавить страницу в закладки, а потом опять зайти - и о чудо, загрузилась страница, а сверху над ней модалка(так же работает просмотр картинок ВКонтакте) причем как Вы видите мне нужно НЕ ЧЕРЕЗ ЯКОРЬ как так сделать? :help: |
Цитата:
|
общем понял как получить url параметр с помощью js
function getGet(name) {
var s = window.location.search;
s = s.match(new RegExp(name + '=([^&=]+)'));
return s ? s[1] : false;
}
alert(getGet('tab'));
Для урла site.ru/page?tab=test выведет "test" но решение своей проблемы не нашел =( |
danik.js,
Все просто, якорь хранится в window.location.hash Ну а дальше собственно стандартные условия...
if (window.location.hash == "modal"){
modal();
}
else if(..) ...
если перейти по site.ru/page#modal выполнится функция modal() |
мне еще предлогали вот так
var url = window.location.search.split('?')[1];
if (url == 'modal=true') {
modal(me.html);
};
мне не лень пошуглить, я вреале не знаю и к сожелению очень уг в javascript, я работаю с php с жабоскриптами минимальные знания |
а почему не работает
<script>
function get(n){
a=window.location.toString();
a="&"+a.substring(a.indexOf("?")+1);
p=a.indexOf("&"+n+"=");
a=p==-1?'':a.substring(p+n.length+2);
return a.indexOf("&")>=0?a.substring(0,a.indexOf("&")):a;
}
var url = window.location.search.split('?')[1];
if (url == 'modal=true') alert(get('page'));
</script>
когда зайти site.ru/page?modal=true выдает пустой алерт а когда site.ru/page?modal=true&page или site.ru/page?modal=true&page=test алерта нет? |
Цитата:
<script> <? if (набор нужных тебе условий) echo 'modal()' ?> </script> |
Цитата:
<script>
function get(n){
a=window.location.toString();
a="&"+a.substring(a.indexOf("?")+1);
p=a.indexOf("&"+n+"=");
a=p==-1?'':a.substring(p+n.length+2);
return a.indexOf("&")>=0?a.substring(0,a.indexOf("&")):a;
}
var url = window.location.search.split('?')[1];
if (url == 'modal=true') {
$.arcticmodal({
type: 'ajax',
url: getParam('page'),
});
};
</script>
|
| Часовой пояс GMT +3, время: 06:43. |