Comments 21
После нажатия на «авторизоваться», в открывшемся окне постоянный релоад окна. Опера 11.00(1156).
0
Закрыт доступ к домену vkontakte.ru. Сделайте возможность логиниться на vk.com.
+4
Кстати, это было бы хорошее правило, поскольку тот же vkontakte.ru заблочен на рабочих местах многих компаний. Так зачем же запрещать нерадивым сотрудникам тратить время на свою программу? :) Пусть работает при любых условиях :)
0
Даже если подключать API с vk.com, то сами вызовы методов API будут идти на адрес api.vkontakte.ru и эту настройку нельзя изменить.
0
«Вы можете производить запросы к API ВКонтакте путем создания HTTP-запроса (POST или GET) к адресу API-сервиса api.vkontakte.ru/api.php или api.vk.com/api.php в зависимости от того, откуда запускается приложение.»
+1
Это уже не будет использованием Open API.
+1
Спорить не буду, не силен я в эти апи-шмапи. Но поясните пожалуйста более развернуто, мне правда интересна эта тема.
0
Похоже это будет Web API.
0
По этой ссылке описано обычное обращение к ВКонтакте API. Open API имеет метод VK.Api.call, который выполняет всю необходимую работу по вызову ВКонтакте API — вычисляет подпись, формирует нужный запрос, но при этом в нем жестко задан адрес, по которому происходит обращение.
0
«У вас недостаточное количество друзей для начала игры» и я наигрался.
Было бы полезным для меня что бы при нехватке друзей подставлялись какие нибудь картинки.
Было бы полезным для меня что бы при нехватке друзей подставлялись какие нибудь картинки.
+5
UFO just landed and posted this here
FireBug может пройти игрульку за минимально возможные 64 хода )
Copy Source | Copy HTML
- function findPair(i, j){
- var id=field[i][j].id, x, y;
- for(x= 0; x<8; x++)
- for(y= 0; y<8; y++)
- if(field[x][y]!=null)
- if(!(i==x && j==y))
- if(field[x][y].id==id){
- return [x, y];
- }
- }
-
- var links=Array();
- $('table#game-field td a').each(function(){links.push($(this))});
-
- timer=setInterval(function(){
- if(links.length<= 0)
- clearInterval(timer);
-
- var el = links.pop();
- var image = $('img', el);
-
- if(image.src!="./images/cleared.jpg"){
- var parentCell = el.parent('td');
- var parentRow = parentCell.parent('tr');
- var i = $('table#game-field tr').index(parentRow);
- var j = $('td', parentRow).index(parentCell);
- var pair=findPair(i, j);
-
- el.click();
- $('table#game-field tr').slice(pair[ 0], pair[ 0]+1).find('td').slice(pair[1], pair[1]+1).find('a').click();
- }
- }, 1000);
+6
Исправьте, пожалуйста, свои циклы for в примерах. Вот это неверно:
for(i = 0; i < data.response.length; i++)
0
Можно поточнее?
0
Да, конечно.
i тут — свободная переменная, она не является локальной для вашей анонимной функции, конкретное ее значение и поведение зависит от лексического окружения коллбека.
Если вы не оборачивали код в какие-то дополнительные функции (не приведенные в примерах), то i свяжется с «глобальной» window.i, соответственно при изменении i в цикле будет меняться не локальная переменная коллбека i, как, вероятно, подразумевалось, а window.i.
У вас таких циклов 2, и оба они будут менять эту глобальную переменную. Таким образом очень просто словить непонятные ошибки, когда переменная неведомым образом неожиданно меняет свое значение. Вы мусорите в глобальном контексте (что может повлиять на работу других скриптов).
Особенно было бы весело вызвать внутри этого цикла другую функцию с похожим образом написанным циклом. В коде сейчас этого нет, но это все равно потенциальная ошибка. Следите за такими вещами внимательнее и не забывайте расставлять var там, где это необходимо. Если непонятно, где необходимо — почитайте где-нибудь про замыкания в js.
i тут — свободная переменная, она не является локальной для вашей анонимной функции, конкретное ее значение и поведение зависит от лексического окружения коллбека.
Если вы не оборачивали код в какие-то дополнительные функции (не приведенные в примерах), то i свяжется с «глобальной» window.i, соответственно при изменении i в цикле будет меняться не локальная переменная коллбека i, как, вероятно, подразумевалось, а window.i.
У вас таких циклов 2, и оба они будут менять эту глобальную переменную. Таким образом очень просто словить непонятные ошибки, когда переменная неведомым образом неожиданно меняет свое значение. Вы мусорите в глобальном контексте (что может повлиять на работу других скриптов).
Особенно было бы весело вызвать внутри этого цикла другую функцию с похожим образом написанным циклом. В коде сейчас этого нет, но это все равно потенциальная ошибка. Следите за такими вещами внимательнее и не забывайте расставлять var там, где это необходимо. Если непонятно, где необходимо — почитайте где-нибудь про замыкания в js.
+4
Спасибо за примеры и статью. Скажите, насколько легко преобразовать ваше приложение в iframe-приложение? (с примером, если можно)
0
Only those users with full accounts are able to leave comments. Log in, please.
Интеграция с ВКонтакте на базе Open API