http23

Рейтинг
21
Регистрация
07.02.2012
Chukcha:
function ui_play(data, hid) {


//обычно cur_song_id, prev_song_id, next_song_id - одно число

cur_song_id=data;
next_song_id=parseInt(cur_song_id)+1;
prev_song_id=parseInt(cur_song_id)-1;

first_song_id=$('#playlist').find('li').first().attr('data-num');
last_song_id=$('#playlist').find('li').last().attr('data-num');

if (hid != 'undefined') { //но если существует аргумент hid, то next_song_id и prev_song_id должны содержать в себе два аргумента для дальнейшего вызова функции ui_play(next_song_id) или ui_play(prev_song_id)
next_song_id=$('#my_live_playlist').find('li[data-id="'+(parseInt(hid)+1)+'"]').attr('data-num')+","+(parseInt(hid)+1);
prev_song_id=$('#my_live_playlist').find('li[data-id="'+(parseInt(hid)-1)+'"]').attr('data-num')+","+(parseInt(hid)-1);
}

Вы меня наверное не правильно поняли.

if (typeof hid != 'undefined')

у меня и так работает, мне нужно вызвать функцию, передав ей в переменной аргументы, например:

ui_play(next_song_id) //где next_song_id содержит в себе либо одно число, либо аргументы data и hid

но я не понимаю, как в одной переменной передать аргументы функции

TF-Studio:
Ссылки привязаны, поэтому гоняем музончик через сервер.
Ничего сложного в этом нету.
Примеров в сети куча, сделать из них сайт - дело пары дней.

Я думаю, что гонять песни через сервер - не выгодно.

Лучше получать ответ от api vk со стороны клиента в xml, и потом уже парсить его с помощью jquery.

---------- Добавлено 30.12.2012 в 13:57 ----------

vdk:
Если у меня динамический ip, то парсить ссылки нет смысла?

всё зависит от того, с какого ip идёт запрос к api vk, если вы получаете ответ с помощью php, то запрос идёт через сервер, следует, в полученном ответе все ссылки на .mp3 будут привязаны к ip вашего сервера и прослушивать их можно будет только если у вас ip как у вашего сервера, чего не может быть. А если напрямую вставить ссылку с запросом к api vk в адресную строку и получить ответ, то все ссылки будут действительны для вашего ip адреса и .mp3 можно будет прослушать только вам.

vdk:
Кстати да.
Что можно вытащить смотрите тут

TF-Studio, у Вас нету случаем примерного шаблона запроса?

подробный пример

и напомню, все ссылки на .mp3 привязаны к ip

siv1987:
А разве для action script не нужен policy file?

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

обойти можно, если запрос к странице (откуда парсятся линки) будет осуществляться со стороны клиента, а не сервера

если парсится инфа с удалённого сайта можно попробовать AJAX Cross Domain, но это скорей всего не сработает, или написать скрипт на action script (что сделал и я), который получает нужную вам страницу, затем с полученным делаете что угодно

Сам спросил, сам ответил 😂


Обработчик события в ActionScript 3 должен получать один аргумент класса Event. Если же нужно самостоятельно вызывать функцию обработчика события, можно написать так:
myHandler(new Event(someEventType));
Что длинно и создает пустое ненужное событие, гораздо проще и удобнее в обработчике события присвоить дефолтное значение аргументу:
public function myHandler(event:Event = null):void {...}
...
// обычный вызов без события
myHandler();

Спасибо ребят, вроде стал не много понимать.

Но есть одна проблемка, как сделать так, что-бы при загрузке/запуске .swf

выполнялась нужная мне функция, а не все, что находятся в public class.

мой код


package
{
import flash.display.Sprite;
import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.external.ExternalInterface;

public class echo extends Sprite
{
function echo()
{

ExternalInterface.addCallback("get_live_url", get_url);

}

function get_url()
{

var request:URLRequest = new URLRequest("http://site.ru/");
var variables:URLLoader = new URLLoader();
variables.addEventListener(Event.COMPLETE, completeHandler);
try
{
variables.load(request);
}
catch (error:Error)
{
trace("Ошибка... Видимо что-то пошло не так. Попробуйте снова.");
}
}

function completeHandler(event:Event)
{
var loader:URLLoader = URLLoader(event.target);
ExternalInterface.call("echo_xml", loader.data);
}

}
}
Anton111:
"Программирование на Flash" называется ActionScript , нужно про него инфу искать

именно это мне и нужно.

спасибо, почитаю

Prividenie:
вам надо выполнить:
$("a[id^=add_]").click(function() {

....
});


$.get("/ajax.php",{'page': page, 'music': jQuery('#i_search').val()},  function(msg){

msg=msg.split('{JAVASCRIPT}');
$('#searchr_24523').html(msg[1]);
ТУТ!
});


чтобы назначить обработчик клика для вновь поступивших данных

точно, теперь понял, что-то сразу не додумался

спасибо ☝

ivan-lev:
Перед for ($c=... вставить
$video_block='';

а в последнюю строчку в цикле добавить точку слева (без пробелов) от знака "=":
$video_block .= '<a href="'.... 

p.s. Вообще, ещё неплохо бы переписать заменой for на while..

Спасибо большое, не знал)

123 4
Всего: 39