2012-02-21 5 views
1

box div будет скрыт во время pageload, когда мы наводим на него это должно отображаться, onmouseover оно должно отображаться, а onmouseout оно должно быть скрыто , может любой орган предложить мне, как это сделать в jquery, я начинаю в JQuery :)как показать/скрыть div на mouseover, когда div установлен для отображения none, в элементе шаблона gridview

Обновление этого Div находится в ItemTemplate gridview. будет ли это работать? с ответом, который вы предоставляете людям?

<div id="box" style="display: none"> 
    <a href="#" class="bt btleft">Highlight it</a> 
    <a href="#" class="bt btright">Reset</a> 
</div> 
+1

Как бы вы определили, что это «над», если его скрытые скрытые элементы не имеют видимой области. –

+0

Невозможно навести курсор на то, что там нет. Вам нужен еще один триггер, если div скрыт. – Scott

+0

хорошо, если вы используете свойство видимости CSS, а не отображаете: none. видимость сохраняется в пространстве. Проверьте мой jsfiddle от моего ответа. Ура! –

ответ

6

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

попробовать это

http://jsfiddle.net/sfUHn/7/

Вашего HTML должен выглядеть следующим образом

<div id='container'> 
<div id="box" style="visibility: hidden"> 
<a href="#" class="bt btleft">Highlight it</a> 
<a href="#" class="bt btright">Reset</a> 
</div> 
</div>​ 

Вы JQuery будут выглядеть следующим образом

$("#container").hover(function() { 
$("#container div").css("visibility","visible"); 
    }, 
    function() { 
    $("#container div").css("visibility","hidden"); 
    });​ 

Надеется, что это помогает

+0

вы можете проверить обновленный вопрос, я поместил div в itemtemplate gridview –

+0

'itemTemplate of gridview' не описывает фактические узлы DOM для людей, которые не используют gridview.Этот метод будет работать нормально до тех пор, пока вы замените элемент контейнера для вашего фактического элемента контейнера. –

+0

thnks greg собирался написать свой ответ :) приветствия! –

1

модифицировать HTML немного как

<div id="hover">hover</div> 
<div id="box" style="display: none"> 
    <a href="#" class="bt btleft">Highlight it</a> 
    <a href="#" class="bt btright">Reset</a> 
</div> 

Jquery часть

$("#hover").hover(function(){ 
    $("#box").slideDown(); 

},function(){ 
    $("#box").slideUp(); 
}); 

DEMO

+0

вы можете проверить обновленный вопрос, acutally я поместил div в itemtemplate gridview –

+0

, где он когда-либо размещен, вам нужно определить обработчик события hover, который виден, как в моем ответе, я привязал его к видимому div, аналогично вы можете присоединить обработчик некоторого видимого элемента вашей сетки – JIA

1

завернуть его в другой DIV и связать событие курсора, находящегося на этой DIV

<div id='parent-wrapper'> 
    <div id="box" style="display: none"> 
    <a href="#" class="bt btleft">Highlight it</a> 
    <a href="#" class="bt btright">Reset</a> 
    </div> 
</div> 

$('#parent-wrapper') 
.mouseover( 
    function() { 
    $('#box').show(); 
    } 
); 
+0

проверить обновленный вопрос, я поместил его в столбец itemview таблицы gridview –

+0

, если asp.net не испортит js, тогда он будет работать нормально, я бы порекомендовал вам попробовать его самостоятельно. – Shaheer

0

Оберните div с другим div и добавить код, который обернут div:

$('#wrapper').bind('mouseover hover', function(){ 

    $('#box').show(); 

}); 


$('#wrapper').mouseout(funcion(){ 

    $('#box').hide(); 

}); 
+0

Как и в других ответах, div скрыт. Нельзя нависнуть над ним. Кроме того, «наведите курсор мыши» на хороший способ привязки? Почему бы просто не использовать функцию .hover() (которая инкапсулирует mouseenter и mouseleave) или, по крайней мере, использовать типы привязки parralel. –

1

Попробуйте это самый простой один ..

$("#box").hover(function() 
{ 
    $(this).show(); 
}, 
function() 
{ 
    $(this).hide(); 
}); 
Смежные вопросы