не работает скрипт в опере
Перенес шаблон на новую версию движка, вдруг перестал работать скрипт позиционирования дивки в зависимости от разрешения.
На эксплорере и мозиле работает, на опере перестал почему-то. вот эта дивка: <div id="shopcart" align="right" style="padding-top:85px; padding-right:135px;">...</div> внизу страницы разместил код: if (window.screen.width == "800") document.all.shopcart.style.paddingRight = "65" if (window.screen.width == "1024") document.all.shopcart.style.paddingRight = "10" if (window.screen.width == "1152") document.all.shopcart.style.paddingRight = "135" if (window.screen.width == "1280") document.all.shopcart.style.paddingRight = "265" почему он может не работать в опере?:blink: |
Первым делом это
Цитата:
document.getElementById("shopcart")
Далее, везде указать единицу измерения Цитата:
|
Вложений: 1
У меня аналогичная ситуация все работает только в ИЕ а на остальных браузерах не работает. Может кто поможет (комбинировал уже очень много вариантов,тот что выше не помог.
код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>ID</title>
</head>
<body style="text-align: center" >
<img id="myimg" src="image/images.jpg" />
<!--<img src="leftbblok.jpg"-->
<h2 id="text">
First car</h2>
<h2 id="H1" onmouseover="javascript: fn()">
Second car
</h2>
<h2 id="H2">
Three car</h2>
<script type="text/javascript">
document.getElementById("text").onmouseover = function () {
var x = document.all.myimg;
x.src = "image/untitlede.png";
}
function fn() {
var x = document.all.myimg;
x.src = "image/untitledr.png"
}
document.getElementById("H2").onmouseover = function fnfpto() {
var x = document.all.myimg;
x.src = "image/images.jpg";
}
// function text.onclick() {alert("message"); }
</script>
</body>
</html>
|
SamWolf,
Не используйте вы document.all это устаревшая возможность, которая совсем в будущем исчезнет во всех браузерах
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>ID</title>
</head>
<body style="text-align: center" >
<img id="myimg" src="http://javascript.ru/forum/images/smilies/sad.gif" />
<!--<img src="leftbblok.jpg"-->
<h2 id="text">
First car</h2>
<h2 id="H1" onmouseover="javascript: fn()">
Second car
</h2>
<h2 id="H2">
Three car</h2>
<script type="text/javascript">
document.getElementById("text").onmouseover = function () {
var x = document.getElementById('myimg');
x.src = "http://javascript.ru/forum/images/smilies/smile.gif";
}
function fn() {
var x = document.getElementById('myimg');
x.src = "http://javascript.ru/forum/images/smilies/victory.gif"
}
document.getElementById("H2").onmouseover = function fnfpto() {
var x = document.getElementById('myimg');
x.src = "http://javascript.ru/forum/images/smilies/blink.gif";
}
// function text.onclick() {alert("message"); }
</script>
</body>
</html>
|
Спасибо за совет но к сожалению на мозиле этот код не работает и несколько похожих тоже (все включено и разрешено)
|
Цитата:
|
Получаеться что мозила работает только с ID-идентификаторами а с колекцыями она не дружит:dance:
|
Цитата:
Наверное вы в коде обработчиков дополнительно работаете с объектом события, а сам объект не передаёте, FF не работает с объектом event, она работает с тем, что было передано в качестве первого параметра.
<span style="background: lightgrey">over</span>
<script>
window.onload = function () {
var span = document.getElementsByTagName('span')[0];
span.onmouseover = function() {
alert(event.clientX);//не работает
}
}
</script>
<span style="background: lightgrey">over</span>
<script>
window.onload = function () {
var span = document.getElementsByTagName('span')[0];
span.onmouseover = function(e) {
alert(e.clientX);//работает
}
}
</script>
|
Хорошо, а как в FF найти "виновника собития" типа:
var x= window.event.srcElement; Понимаю что способ старенький , но все-же. :help: |
function(e) { var target = e.target
|
Спасибо
|
| Часовой пояс GMT +3, время: 06:04. |