Перейти к публикации
Гость sTee

DataLife Engine Опера через раз читает скрипт..

Рекомендованные сообщения

Гость sTee

Здравствуйте всем.

Тема такая, захожу на сайт через оперу - не запускает скрипты вида (запускает, но редко 50/50):

 

function test() {
var free = $('#dle-content').html();
DLEalert(free);
}
test();

Из-за чего может быть такое?

 

Вот так будет работать(без var):

function test() {
DLEalert('123123321');
} test();

и вот так:

 


$(function() {
DLEalert('123123321');
});

и вот так:

setInterval(function() {
DLEalert('123123321');
});
<!--url{0}--> height=

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

У функции DLEalert() два параметра. Попробуйте с двумя (второй можно пустой "").

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

вот этот код не запускается:

function autopanel() {
	var panelx = ($('.bg-top').width()-$('.nopanel, .yespanel').width())/'2';
	$('.nopanel, .yespanel').css('position', 'absolute').css('left', ''+panelx+'px').css('top', '-2px');
	$(".nopanel, .yespanel").fadeIn('slow');
}

Приходится запускать так:


jQuery(function() {
	var interval = setInterval(function(){
		autopanel();
		clearInterval(interval);
	}, 1000);
});
.. по другому не всегда срабатывает.. Изменено пользователем sTee

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

var panelx = ($('.bg-top').width()-$('.nopanel, .yespanel').width())/'2';

Нельзя делить на строку

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

Если запустить так:


$(function() {
    var panelx = ($('.bg-top').width()-$('.nopanel, .yespanel').width())/'2';
    $('.nopanel, .yespanel').css('position', 'absolute').css('left', ''+panelx+'px').css('top', '-2px');
    $(".nopanel, .yespanel").fadeIn('slow');
});
то опера при обновлении все нормально показывает, а при переходе на главную и т.д по ссылкам на сайте или логотипу - не читает panelx

 

var panelx = ($('.bg-top').width()-$('.nopanel, .yespanel').width())/'2';

Нельзя делить на строку

 

И как же быть? Мне нужно по центру что бы было..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

 

var panelx = ($('.bg-top').width()-$('.nopanel, .yespanel').width())/'2';

Нельзя делить на строку

 

И как же быть? Мне нужно по центру что бы было..

 

В кавычках двойка - это строка, без кавычек - число. Намёк, думаю ясен.

jQuery(function() {
	var interval = setInterval(function(){
		autopanel();
		clearInterval(interval);
	}, 1000);
});
Зачем устанавливать интервал и тут же его отменять? Если нужно, чтобы сработало один раз - воспользуйтесь setTimeout()

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

Спасибо.

Через setTimeOut он его читает так же, как и $(function()

 

function autopanel() {
	$('.nopanel, .yespanel').css('position', 'absolute').css('left', '200px').css('top', '-2px');
	$(".nopanel, .yespanel").fadeIn('slow');
}

Даже так опера читает только при первом заходе, дальше не читает..

Изменено пользователем sTee

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

Во всех браузерах все хорошо, кроме оперы....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

Я так же заметил, что ShowLoading(""); тоже часто игнорирует..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость sTee

Нашел причину, опера игнорирует все скрипты (через раз...), где имеется что-то вроде:

 

$(window).width()-$("#loading-layer").width();

Есть предположения, что может быть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...