Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Layers and FireFox
 
 автор: JollyRoger   (19.08.2009 в 17:53)   письмо автору
 
 

Hi
Имеются две картинки
image.png
---------------------------------
| |---------------------- ---====|
| | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;|====|
| | Transparent area;|====|
| | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;|====|
| | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;|====|
| |_____________ _|====|
|____________________|
и image.jpg (без прозрачности)
Следующий код

<div tyle="position: relative; height: 100%; width: 100%; z-index: 3;
visibility: visible; overflow: hidden;">
<div id="page_image" style=" position: absolute; width: 564 ;
z-index: 1; left: 0px; top: 0px; overflow: hidden; alignX: 100;"
onmouseup="alert('MouseUp Fired!');">
<img class="dragclass" id="page_imagePort-image"
src="image.jpg" width="900" height="608" style="cursor:
move;position: relative; left: 0px; top: 0px;" alt="" />
</div>
<div id="layer_s" style="position: absolute; width: 578 ; z-
index: 2; left: 0px; top: 0px; visibility: visible;">
<img id="plastic" src="Image.png" width="898"
height="566" />
</div>
</div>
в Интернет Експлорере
1. меняет форму курсора при перемещение на image.jpg (в прозрачной области layer_s).
2. выдает алерт при клике в перечисленной выше области.
В FireFox не работает. Может кто-то знает как это можно делать и для FireFox?
Спасибо

  Ответить  
 
 автор: PAT   (19.08.2009 в 18:45)   письмо автору
 
   для: JollyRoger   (19.08.2009 в 17:53)
 

1. В стилях для кроссбраузерности необходимо указывать размерность.
width: 578 ; - неправильно
надо width: 578px;


2. Незачем использовать конструкцию <div style="правила CSS"><img></div>
Её вполне можно (и нужно) заменить на <img style="правила CSS">

3. Изобразите вашу схему внутри псевдотегов выделения текста "Код"
Тогда, наверно, можно будет понять - что вы хотите получить.

  Ответить  
 
 автор: JollyRoger   (20.08.2009 в 09:37)   письмо автору
273 Кб
 
   для: PAT   (19.08.2009 в 18:45)
 

Буду точнее
1. есть картинка image.jpg
2. и image.png которая имеет прзрачную область


Эти картинки накладываются слоями причем png верхний слой таким образом чтоб

  Ответить  
 
 автор: JollyRoger   (20.08.2009 в 09:50)   письмо автору
341.8 Кб
 
   для: PAT   (19.08.2009 в 18:45)
 

Сорри

Буду точнее
1. есть картинка image.jpg
2. и image.png которая имеет прозрачную область
(приатачены в zip)


Эти картинки накладываются слоями причем 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>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования