Уменьшаю окно ,заголовок страницы уходит влево

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Аватара пользователя
__Yuri__
Сообщения: 140
Зарегистрирован: 02 ноя 2006, 17:17
Контактная информация:

Не, как без JavaScript не знаю, но если посмотрите исходный код своей странички, то увидите, что он сплошь и рядом нашпигован JavaScript.

Полоса горизонтальной прокрутки появляется из-за жесткого позиционирования (в px) DIV.

В FF у меня работает (версия 2.0.0.6). Если в каком-то браузере не работает, то тут и начинается Песня. Нужно смотреть объектную модель документа для данных браузеров и писать отдельный код типа:


// Определяем что за браузер
var lay_agt=navigator.userAgent.toLowerCase();
var ver=parseFloat(navigator.appVersion);

var is_ie=((lay_agt.indexOf("msie") != -1) && (lay_agt.indexOf("opera") == -1));
var is_nav=((lay_agt.indexOf('netscape')!=-1) || (lay_agt.indexOf('mozilla')!=-1) && (lay_agt.indexOf('spoofer')==-1) && (lay_agt.indexOf('compatible') == -1) && (lay_agt.indexOf('opera')==-1) && (lay_agt.indexOf('webtv')==-1));
var isMinNav4=(navigator.appName.indexOf("netscape")>=0 && ver>=4 && ver<5);
var isOldOpera=(navigator.appName.indexOf("opera")>=0 && ver<7);
var is_opera7=(lay_agt.indexOf("opera") != -1 && ver>=7);
var is_webtv=(lay_agt.indexOf("webtv") != -1);


Потом взависимости от браузера создать строки JavaScript для выполнения в runtime:

var scroll_y=0; // string scrollTop
var scroll_x=0; // string scrollLeft
var iW=760; // string clientWidth
var iH=500; // string clientHeight


// Размеры рабочей области окна
// MSIE - document.body.clientWidth, clientHeight
// Netscape, Mozilla, Opera - innerWidth, innerHeight
if(is_ie)
{
iW = "document.body.clientWidth";
iH = "document.body.clientHeight";
}
else
{
iW = "window.innerWidth";
iH = "window.innerHeight";
}


// Прокрутка (scrolling)
// MSIE, Opera 7 - document.body.scrollLeft, scrollTop
// Netscape, Mozilla, Opera 5, 6 - pageXOffset, pageYOffset

scroll_y=scroll_x="parseInt(";
if(is_ie || is_opera7)
{
scroll_y += "document.body.scrollTop)";
scroll_x += "document.body.scrollLeft)";
}
else
{
scroll_y += "window.pageYOffset)";
scroll_x += "window.pageXOffset)";
}

А потом в функциях обработки событий вычислять переменные

var nWidth=eval(iW);
var nHeiht=eval(iH);
var nScroll_y=eval(scroll_y);
var nScroll_x=eval(scroll_x);

Вот и всего-то делов :)
Hastalavista
Сообщения: 6
Зарегистрирован: 02 сен 2007, 14:45

Подскажите, пожалуйста, если кто-то знает:
В коде моей index странице появился кусок кода, который я не писал, не пойму как он туда мог попасть. Кто мог его туда добавить?:
причем я удаляю index.htm и зссылаю на сервер новый index.htm а он опять появляется
<script language="javascript" type="text/javascript">
<!--
var RndNum4NoCash = Math.round(Math.random() * 1000000000);
document.write('<sc' + 'ript language="JavaScript" type="text/javascript" src="http://ad.adriver.ru/cgi-bin/erle.cgi?s ... &pz=0&rnd=' + RndNum4NoCash + '"><\/sc' + 'ript>');
//-->
</script>
<script type="text/javascript" src="http://www.jino-net.ru/sys/swfobject.js"></script>
<span style="display:none;"><script type="text/javascript" src="http://www.jino-net.ru/sys/htmlbegun.js ... ipt></span>
<script type="text/javascript" src="http://www.jino-net.ru/sys/htmljino.js"></script>
<script type="text/javascript" src="http://www.jino-net.ru/sys/mainjs.php"></script>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
<script type="text/javascript">
_uacct = "UA-1275823-1";
urchinTracker();
</script>

-->
Аватара пользователя
__Yuri__
Сообщения: 140
Зарегистрирован: 02 ноя 2006, 17:17
Контактная информация:

Это "бесплатный" хостер вставляет рекламу - многое можно убрать , расшифровав методом проб алгоритм, по которому вставляются эти штучки, но рано или поздно хостер это засечет и удалит страничку нарушителя. Например, если он вставляет свою хрень после тэга <body>, то можно написать вместо него document.write("#x и коды буковок <body, а фальшивый боди поставить в конце после </html> или в комментах <!-- .... -->.

Только надо ли это, так же как горизонтальная прокрутка и зеленый фон заголовка...
Ответить