"이"id/img의 공중에 "빠른 구매"아이콘을 표시하려고합니다. 이 빠른 구매 아이콘이 모든 이미지에 표시되는 것을 원하지 않습니다. 그냥 위에 올려 놓은 이미지 만 표시하면됩니다.jQuery. 이것을 호버에 적용하십시오.
<div id="comp-imageprince" class="image" style="height: 260px;"> <table cellspacing="0" cellpadding="0" border="0"> <tbody> <tr> <td><a href="/dresses/mandy-strappy-bandeau-layered-bodycon-dress/invt/azz50430"> <div class="overDIV" style="display:none;position: absolute;right: 5px;"></div>
<div id="QuickBuyProdBox"><p>test</p></div>
그러나 이것은 완전히 잘못된 것입니다 단순히 DIV ID 다음에 이미지를 복제한다 "QuickBuyProdBox"
jQuery를 :
jQuery('#main_cat_prods').delegate('img', 'hover', function(){
jQuery("#QuickBuyProdBox").append($(this).clone());
});
HTML
지금까지 나는이 있습니다 . 나는 여기에 클론의 사용을 오해했다고 생각한다! 또한이 기능은 마우스를 올리거나 마우스를 올리면 실행되며, 사용자가 마우스를 올리면 작동하고 사용자가 마우스를 가리면 사라집니다.
내가해야 할 일 : div id "comp-imageprince"의 맨 위 또는 위에 "div"라는 제목의 아이디 "QuickBuyProdBox"가 표시됩니다. 그런 다음 사용자가 div에서 커서를 제거하면 다시 숨기려면 div가 필요합니다.
어떤 조언이 필요합니까?
많은 감사, 마일스 다음과 같은 솔루션 사용하여 해결
:
jQuery('#main_cat_prods').delegate('img', 'mouseenter', function(){
var $skuID = this.src.match(/[a-z][a-z][a-z]\d\d\d\d\d/)[0];
if (!jQuery('#QuickBuyProdBox').length) {
jQuery(this).closest('.image').prepend('<div id="QuickBuyProdBox" style="width:50px; height:50px; position:absolute; background-color:red; cursor:pointer;">');
};
jQuery("#QuickBuyProdBox").click(function(){
jQuery.event.trigger('lightbox', $skuID);
});
jQuery('.image, #QuickBuyProdBox').mouseleave(function(){
jQuery('#QuickBuyProdBox').remove();
});
});
"후"여기 더 이해가되지 않을까요? 예 : $ ('# bla'). 이후 ('
'); – user5623896726'img'와'# main_cat_prods'는 무엇인가, 왜 hover' 이벤트를 사용하고 있습니까 (btw하지 말아야 할 것입니다), 이미 그 요소가 있습니다. 그리고 여러분은 단지 visiblity를 토글하려고하고 있습니다. 그것을 삽입? 복제 할 대상은 무엇입니까? 이것의 어느 것도 나에게 어떤 의미가 없어요! – adeneo
죄송합니다. 질문에 대해서는 잘 말하지 않았습니다. loc_ta에서 main_cat_prods를 가져옵니다. 이미지가 포함되어 있습니다. 내 페이지에는 메인 main_cat_prods가 있습니다. 사용자가이 main_cat_prods 중 하나를 가리키면 div가 main_cat_prods의 맨 위 또는 뒤에 표시되기를 원합니다. 그들 모두는 아닙니다. – Myles