Помощник
|
Layers и FireFox |
JollyRoger_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
Apay |
20.8.2009, 11:12;
Ответить: Apay
Сообщение
#2
|
|
что-то вы наделали... разобраться сходу трудно... например про стиль alignX я впевые слышу. кроме приведенного кода еще неплохо было бы и css, а то классы и id у объектов есть, а стилей для них не приведено.
опишите что должно получиться в итоге |
|
|
JollyRoger_hb
|
Сообщение
#3
|
|
что-то вы наделали... разобраться сходу трудно... например про стиль alignX я впевые слышу. кроме приведенного кода еще неплохо было бы и css, а то классы и id у объектов есть, а стилей для них не приведено. опишите что должно получиться в итоге Сорри Буду точнее 1. есть картинка image.jpg 2. и image.png которая имеет прозрачную область (плохо что не могу приатачить приатачил на http://www.softtime.ru/forum/read.php?id_f...7419&page=1) Эти картинки накладываются слоями причем png верхний слой таким образом чтоб jpg была видна только в прозрачной части png, Надо захватить события mouse только на видимом участке jpg чтоб движением мышки можно было позиционировать jpeg а нажатием кнопок маштабировать. HTML на которм можно это делать дан ниже. Но это только в IE (в идеале было бы чтобы ннезавизило от браузера) но мин требуется чтоб работала и в FireFox <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <script type="text/javascript"> if (window.captureEvents){ window.addEventListener("load",correctPNG,true); } else { window.attachEvent("onload", correctPNG); } function correctPNG(e) { for (var i = 0; i < document.images.length; i++) { var img = document.images[i]; var imgName = img.src.toUpperCase(); if (imgName.substring(imgName.length - 3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : ""; var imgClass = (img.className) ? "class='" + img.className + "' " : ""; var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "; var imgStyle = "display:inline-block;" + img.style.cssText; var a2=img.parentNode; if (img.align == "left") { imgStyle = "float:left;" + imgStyle; } if (img.align == "right") { imgStyle = "float:right;" + imgStyle; } if (img.parentNode.href) { imgStyle = "cursor:hand;" + imgStyle; } var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src='" + img.src + "', sizingMethod='scale');\"></span>"; img.outerHTML = strNewHTML; } } } </script> </head> <body> <br> <table width="900" height="570"> <tr> <td style="overflow: hidden"> <div style="position: relative; height: 100%; width: 100%; z-index: 3; visibility: visible; overflow: hidden"> <div id="page_imagePort" style="position: absolute; width: 564px; z-index: 1; left: 0px; top: 0px; alignX: 100"> <img id="page_imagePort-image" src="image.jpg" width="900" height="608" style="cursor: move; position: relative; left: 0px; top: 0px" alt="" onmouseup="alert('MouseUp Fired!');"/> </div> <div id="Layer3" style="position: absolute; width: 578px; z-index: 2; left: 0px; top: 0px; visibility: visible; -moz-opacity: 1"> <img id="plastic" src="Image.png" width="898" height="566" /></div> </div> </td> </tr> </table> <br> </body> </html> код желательно выделять, кнопочки для этого есть Apay |
|
|
Apay |
20.8.2009, 12:19;
Ответить: Apay
Сообщение
#4
|
|
если png стоит поверх jpg, то любые операции с мышкой будут перехватываться верхней картинкой (прозрачные пиксели - это тоже пиксели картинки). и если что-то сработало из-за глюка ie, то оно не обязано работать в других браузерах.
кстати, у вас ф-я correctPNG не проверяет что за браузер используется (баг) |
|
|
JollyRoger_hb
|
Сообщение
#5
|
|
если png стоит поверх jpg, то любые операции с мышкой будут перехватываться верхней картинкой (прозрачные пиксели - это тоже пиксели картинки). и если что-то сработало из-за глюка ie, то оно не обязано работать в других браузерах. кстати, у вас ф-я correctPNG не проверяет что за браузер используется (баг) Иммено с correctPNG в IE и игнорируется прозрачный слой поверх jpg. Без var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src='" + img.src + "', sizingMethod='scale');\"></span>"; img.outerHTML = strNewHTML; в IE тоже как в лисе. |
|
|
Apay |
20.8.2009, 18:35;
Ответить: Apay
Сообщение
#6
|
|
|
как я уже писал
и если что-то сработало из-за глюка ie, то оно не обязано работать в других браузерах добавлю: это не обязано работать и в последующих версиях ie (мелкомягкие обещают двигаться в сторону стандартов)
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Счетчики трекеров не отображаются в Mozilla Firefox Самый глючный браузер наверное |
26 | muratastana | 3606 | 13.12.2022, 8:36 автор: muratastana |
|
Таблица растягивается в Chrome , Opera в FireFox все хорошо , помогите. | 0 | Hammer2900 | 6239 | 3.2.2013, 22:01 автор: -Hammer2900- |
|
калькулятор не работает в firefox | 2 | cro7 | 7015 | 8.7.2012, 17:19 автор: -Bonik- |
|
Нужно лого для расширения Firefox | 8 | Galen | 4074 | 2.12.2011, 16:36 автор: -Galen- |
|
отступ снизу после основного блока в firefox,opera,ie8 | 0 | Doctor_Victor | 9180 | 16.4.2011, 10:05 автор: -Tusha-kurusha- |
Текстовая версия | Сейчас: 29.3.2024, 17:13 |