Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] div как ссылка? (http://forum.oszone.net/showthread.php?t=139941)

rizz 12-05-2009 19:21 1116646

div как ссылка?
 
есть div, в нём другие блоки, картинки
как сделать чтобы при нажатии в любую свободную область этого блока срабатывала ссылка на страницу

Igor_I 12-05-2009 20:11 1116693

Javascript. Свойство Onclick. Или это действие. По крайней мере я так думаю.

proxy 12-05-2009 21:22 1116759

при нажатии на вообще любую область, картинку и т.д. внутри div:
HTML код:

<div onClick="window.location='http://ya.ru'" style="cursor:pointer">картинки и т.д.</div>

rizz 12-05-2009 21:32 1116771

спасибо работает, а как сделать чтобы срабатывала только свободная область, потому что там будут картинки и они тоже ссылки

dmitryst 12-05-2009 22:47 1116842

Цитата:

Цитата rizz
как экранировать двойные кавычки? »

print <<<END
тут ваш HTML код без экранирования
END
- не пробовали?
а можно и так - print "<h1 align=\"center\">$title</h1>";

rizz 12-05-2009 22:48 1116843

dmitryst, кавычки уже нашёл)) осталось с блоками разобраться, может вставить над картинкой ещё несколько блоков, но с ссылками на картинки

dmitryst 12-05-2009 23:43 1116884

rizz, а как насчет z-index_а? Положить ваш слой на самый низ, а сверху - ваши картинки в div-ах с бОльшими индексами. Таким образом, OnMouseOver от картинок не будут перекрываться таким событием от фонового div-а, т.е. можно назначить им другие обработчики событий.

proxy 13-05-2009 00:08 1116903

в php так:
PHP код:

echo '<div class="tovar" onClick="window.location=\'http://ya.ru\'" style="cursor:pointer"></div>'

или так:
PHP код:

echo "<div class=\"tovar\" onClick=\"window.location='http://ya.ru'\" style=\"cursor:pointer\"></div>"

dmitryst, а в примере? а то через js, на кроссбраузерность - гемор )

хотя, получается так:

HTML код:

<script type="text/javascript">
        //вызов функции после полной загрузки страницы
        window.onload = function(){
                //назначение div-а ссылкой, id которого: tovar
                div_link('tovar', 'http://ya.ru');
        }
        function div_link(id, link){
                var div = document.getElementById(id);
                var in_div = div.getElementsByTagName('*');
                var action=true;
                div.style.cursor='pointer';
                if(div.addEventListener){
                        div.addEventListener('click', function(){ if(action) window.location=link; }, false);
                }else{
                        div.attachEvent('onclick', function(){ if(action) window.location=link; });
                }
                for(var obj in in_div){
                        if(in_div[obj].tagName){
                                in_div[obj].style.cursor='default';
                                if(in_div[obj].addEventListener){
                                        in_div[obj].addEventListener('mouseover', function(){ action=false; }, false);
                                        in_div[obj].addEventListener('mouseout', function(){ action=true; }, false);
                                }else{
                                        in_div[obj].attachEvent('onmouseover', function(){ action=false; });
                                        in_div[obj].attachEvent('onmouseout', function(){ action=true; });
                                }
                        }
                }
        }
</script>
<div id="tovar" class="tovar">
        <div>это не ссылка</div>
        <span>это то же не ссылка</span>
        <br>а это ссылка
</div>


rizz 13-05-2009 00:19 1116917

dmitryst, да z-index работает))
у меня тут новая задумка, но не знаю реально ли, чтобы при наведении мыши на один div для него в стилях прописано .tovar:hover и фон, также менялся фон другого div который стоит на этой же странице, но не связан с тем над которым курсор
так как товаров на странице много, а надо помечать другим фоном только один товар

а ссылки такого вида
Код:

<div onClick="window.location='http://ya.ru'" style="cursor:pointer">картинки и т.д.</div>
поисковик нормально проиндексирует?

proxy 13-05-2009 00:40 1116935

Цитата:

Цитата rizz
у меня тут новая задумка, но не знаю реально ли, чтобы при наведении мыши на один div для него в стилях прописано .tovar:hover и фон, также менялся фон другого div который стоит на этой же странице, но не связан с тем над которым курсор »

все так же, через js. какая структура html?

rizz 13-05-2009 02:06 1116986

proxy, а ладно, забей, не шарю в js

dmitryst 13-05-2009 13:51 1117323

Цитата:

Цитата rizz
реально ли, чтобы при наведении мыши на один div , также менялся фон другого div который стоит на этой же странице, »

да, поищите на форуме пример . Там, правда, с таблицами, но этот же скрипт можно прикрутить и к другому элементу

proxy 13-05-2009 15:52 1117433

хорошие материалы по js для начинающих
мануал на русском по jquery


Время: 08:49.

Время: 08:49.
© OSzone.net 2001-