[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Страница перезагружается
program90
после загрузки страницы javascript исполняется два раза. $(document).ready(



Спустя 3 минуты, 20 секунд (29.12.2011 - 11:31) Winston написал(а):
И в чем вопрос ?

Спустя 2 часа, 24 минуты, 45 секунд (29.12.2011 - 13:56) program90 написал(а):
Winston
Почему firebug при трассировке показывает весь код исполняется два раза.

Спустя 1 час, 23 минуты, 30 секунд (29.12.2011 - 15:19) Michael написал(а):
не должно ничего два раза выполняться.
Выстави на хостинг, глянем, в чем ты ошибся.
Или код сюда.

Спустя 2 часа, 8 минут, 6 секунд (29.12.2011 - 17:27) program90 написал(а):
(function($) {
$(document).ready(function() {
var fancybox_onStart = function fancybox_onStart(el, show)
{
roll_path = AddrollNamespace.roll_path;

var name = $(el).attr('name');
$('body').append('<div id="add_roll_cont" style="display:none"><div id="add_roll_data"><div id="add_roll_cont2">Loading flv file...</div></div></div>');
jwplayer('add_roll_cont2').setup({
flashplayer: AddrollNamespace.player_path,
height: AddrollNamespace.y,
width: AddrollNamespace.x,
autostart: true,
repeat: 'always'
});

if (show == 0)
roll_path = "";

if (roll_path != "")
{
playlist = [{file: roll_path}, {file: name}];
AddrollNamespace.count = 2;
}
else
{
playlist = [{file: name}];
AddrollNamespace.count = 1;
}
jwplayer('add_roll_cont2').load(playlist);

jwplayer('add_roll_cont2').onPlaylistItem(function() {
var v = jwplayer('add_roll_cont2').getPlaylistItem();
if (v.index == 0 && AddrollNamespace.count > 1)
jwplayer('add_roll_cont2').getPlugin("controlbar").hide();
else if (v.index == 1)
jwplayer('add_roll_cont2').getPlugin("controlbar").show();
});
}

var adrl_ajax_call = function adrl_ajax_call(el, show) {
$.ajax({
type: "GET",
url: AddrollNamespace.ajaxurl,
data: "action=addroll_count_upd&nonce="+AddrollNamespace.nonce+/*"&post_id="+Ad drollNamespace.post_id*/"&hash="+Math.random(),
success: function(result) {
if (result == 1)
AddrollNamespace.roll_path = '';
fancybox_onStart(el, show);
},
async: false,
dataType: "html",
cache: false,
});
}

var fancybox_init = function fancybox_init() {
$('a[href$=".flv"]:not(.noroll):not(.sopcast_popup)').each(function(ind, el) {
/*var href = $(el).attr('href');
var arr = href.split('.');
if (arr.length != 2 || arr[1] != "flv")
return;
*/


$(el).fancybox({
'padding': 0,
'scrolling': 'no',
'onStart': function(arr, ind, opts) {
el = $(arr[ind]);
var href = el.attr('href');
el.attr('href', '#add_roll_data');
el.attr('name', href);
adrl_ajax_call(arr[ind], 1);
},
'onClosed': jwplayer_off_plugin
});
});

$('a.noroll').fancybox({
'padding': 0,
'scrolling': 'no',
'onStart': function(arr, ind, opts) {
el = $(arr[ind]);
var href = el.attr('href');
el.attr('href', '#add_roll_data');
el.attr('name', href);
adrl_ajax_call(arr[ind], 0);
},
'onClosed': jwplayer_off_plugin
});
}

fancybox_init();

var jwplayer_off_plugin = function jwplayer_off_plugin() {
jwplayer('add_roll_cont2').remove();
$('#add_roll_cont').remove();
};



$('a.sopcast_popup').fancybox({

'onStart': function() {
$('body').append('<div id="sopcast_container" style="display: none;"><div id="sopcast_popup_data">'+
'<div class="wnd-container"><div class="left-container"><h2 class="header-left">Варианты просмотра</h2>'+
'<div class="subheader" id="high_quality">Смотреть в высоком качестве <br/>'+
'<em>(1000 kbps, 720x576, h264)</em></div>'+
'<div><img class="shakeimg sopcast-top" src="'+AddrollNamespace.sp_plugin_path+'/sopcast.png" /></div>'+
'<div class="subheader" id="low_quality">Смотреть в низком качестве <br/>'+
'<em>(300 kbps, 320x240, h264)</em></div>'+
'<div><img class="shakeimg sopcast-bottom" src="'+AddrollNamespace.sp_plugin_path+'/sopcast.png" />'+
'<img class="shakeimg goalbit" src="'+AddrollNamespace.sp_plugin_path+'/goalbit.png" /></div></div>'+

'<div class="right-container"><h2 class="header-right">Установить</h2>'+
'<div class="subheader-right" id="high_quality">Sopcast</div>'+
'<div><img class="shakeimg sopcast-right" src="'+AddrollNamespace.sp_plugin_path+'/sopcast.png" /></div>'+
'<div class="subheader-right" id="low_quality">Goalbit</div>'+
'<div><img class="shakeimg goalbit-right" src="'+AddrollNamespace.sp_plugin_path+'/goalbit.png" />'+
'</div></div></div>'+
'</div></div>');
if ($.browser.mozilla)
{
$("img.shakeimg").mouseenter(function () {
$(this).effect("shake", { times:1, distance:1, direction: "right" }, 140);
});
};

addlinks();
},
'autoDimensions': false,
'width': 700,
'height': 460,
'padding': 0,
'onComplete': function() {
if ($.browser.msie)
{
$('#fancybox-content').css('height', '460');
};
}
}
);

$('body').append('<a id="a_goalbit" class="iframe" href="#goalbit-player"></a>');
$('#a_goalbit').fancybox({
'autoDimensions': false,
'width': 640,
'height': 360,
'type': 'iframe',
'padding': 12,
'scrolling': 'no'
});


});

var addlinks = function()
{
$('img.sopcast-top').wrap('<a class="href-close" href="sop://broker.sopcast.com:3912/99074"></a>');
$('img.sopcast-bottom').wrap('<a class="href-close" href="sop://broker.sopcast.com:3912/99117"></a>');
$('img.sopcast-right').wrap('<a class="href-close" href="http://www.somedomain.dd/?p=165"></a>');
$('img.goalbit').wrap('<a class="href-goalbit"></a>');
$('a.href-close').live('click', function() {$.fancybox.close();});
$('a.href-goalbit').live('click', function() {
var goalbit_player = '<div style="display: none;"><div id="goalbit-player"><div id="goalbit1" url="http://gb.somedomain.dd/channel_list/get_goalbit_file/somedomain.dd" autoplay="false" fullscreen="false" aspectRatio="" minimumAcceptVersion="0.7.7" maximumAcceptVersion="0.7.7"></div></div></div>';
$('body').append(goalbit_player);
$.fancybox.close();
$('sopcast_container').remove();
//loadGoalBitPlayer('goalbit1');
var src = getSrc('goalbit1');
$('#a_goalbit').attr('href', src);
setTimeout("$('#a_goalbit').trigger('click');", 1000);

});
}

var getSrc = function(id)
{
var element = document.getElementById(id);
src ="http://gb.somedomain.dd/webplayer/player.html?url=gbtp://" +
element.getAttribute("url") + "&autoplay=" +
element.getAttribute("autoplay") + "&fullscreen=" +
element.getAttribute("fullscreen") + "&aspectRatio=" +
element.getAttribute("aspectRatio") + "&minimumAcceptVersion=" +
element.getAttribute("minimumAcceptVersion") + "&maximumAcceptVersion=" +
element.getAttribute("maximumAcceptVersion");

return src;
}
}
)(jQuery);

Спустя 7 минут, 28 секунд (29.12.2011 - 17:35) inpost написал(а):
program90
Зачем ты в функцию повесил onload?
window.onload = function() {
стандартное решение без всяких jQuery
}

Спустя 1 минута, 53 секунды (29.12.2011 - 17:36) program90 написал(а):
inpost
в какую функцию onload - у меня document ready )

Спустя 8 минут, 15 секунд (29.12.2011 - 17:45) program90 написал(а):
inpost
ну я так всегда делаю. в принципе разницы нет наверно.

Спустя 49 секунд (29.12.2011 - 17:46) program90 написал(а):
inpost
там вроде бы в некоторых браузерах может не правильно работать

Спустя 2 минуты, 51 секунда (29.12.2011 - 17:48) inpost написал(а):
program90
Так вроде бы, или точно?
Проверяется просто, в самом начале пишется:
alert('ok');

И смотришь, сколько раз вывелось :) Может просто скрипт какой-то где-то дважды отрабатывает. Попробуй как я показал.

Спустя 6 часов, 14 минут, 47 секунд (30.12.2011 - 00:03) program90 написал(а):
inpost
да повторяется

Спустя 21 час, 9 секунд (30.12.2011 - 21:03) Guest написал(а):
в firebug сделай пошаговый дебажинг вот и всё, чего мучаться

Спустя 3 часа, 33 минуты, 58 секунд (31.12.2011 - 00:37) inpost написал(а):
Как это делается пошагово?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.