Страница 1 из 1

Передача параметров JavaScript

Добавлено: 18 янв 2011, 14:20
BaCo
Здравствуйте! Интересует возможность передачи параметров между страницами. Делаю так:

Код: Выделить всё

<script src="/js/jquery.js" type="text/javascript"></script><script type='text/javascript'>$(document).ready(function() { VK.init(function() { function getVkParams() { VK.loadParams(document.location.href); return 'api_url=' + VK.params.api_url + '&api_id=' + VK.params.api_id + '&api_settings=' + VK.params.api_settings + '&viewer_id=' + VK.params.viewer_id + '&viewer_type=' + VK.params.viewer_type + '&sid=' + VK.params.sid + '&secret=' + VK.params.secret + '&user_id=' + VK.params.user_id + '&group_id=' + VK.params.group_id + '&is_app_user=' + VK.params.is_app_user + '&auth_key=' + VK.params.auth_key + '&language=' + VK.params.language + '&parent_language=' + VK.params.parent_language + '&lc_name=' + VK.params.lc_name;} if(location.hash.slice(1)) loc = location.hash.slice(1); else loc = window.location.pathname; var parts=document.location.search.substr(1).split("&"); var flashVars={}, curr; for (i=0; i<parts.length; i++) { curr = parts[i].split('='); flashVars[curr[0]] = curr[1]; }alert(loc); VK.callMethod('setLocation', loc); VK.addCallback('onLocationChanged', onLocationChanged); VK.api("getProfiles", {uids:flashVars['viewer_id'],fields:"photo"}, function(data) { $('#user_name').html(data.response[0].first_name + ' ' + data.response[0].last_name); $('#user_photo').attr("src",data.response[0].photo); }); VK.callMethod('resizeWindow', 827, $('#page').height() + 20); });});function onLocationChanged(loc) { if(window.location.pathname != loc && loc != '') { window.location.href = 'http://day.guruserv.ru' + loc + '?' + getVkParams(); }}</script>
Но при нажатии на ссылку "Главная", viewer_id и другие переменные теряются. Что делать?

Re: Передача параметров JavaScript

Добавлено: 18 янв 2011, 16:30
ukhov
1) а где сама ссылка?
2) передавать не на javascript а просто за счёт добавления полученных данных из getа

Re: Передача параметров JavaScript

Добавлено: 19 янв 2011, 14:43
BaCo
1) Проблема в том, что заранее неизвестно, как будет выглядеть ссылка.
2) Нужно чтобы переход по ссылке перехватывался и добавлялись эти параметры из гета. Как это сделать?

Re: Передача параметров JavaScript

Добавлено: 19 янв 2011, 20:51
Александр
BaCo
Попробуй сделать

Код: Выделить всё

alert(getVkParams());
Попробуй вынести функцию function getVkParams() за пределы VK.init.

Re: Передача параметров JavaScript

Добавлено: 23 янв 2011, 17:56
BaCo
Попробуй вынести функцию function getVkParams() за пределы VK.init.
Не получилось. Все равно не работает...
Я бы заносил viewer_id в сессию, да нет возможности использовать PHP.

Re: Передача параметров JavaScript

Добавлено: 23 янв 2011, 22:38
Александр
BaCo писал(а):Проблема в том, что заранее неизвестно, как будет выглядеть ссылка.
Нужно сделать чтобы было известно, что в ссылке передаются параметры. К ней данные из getVkParams() добавляешь? Выясни где у тебя пропадают переменные.
Ссылки должны быть примерно http://flapps.ru/script.php?viewer_id=1&viewer_type=1
Если в ссылке этих переменных нет, то их скрипт и не найдёт.