2013-09-05 3 views
1

나는 Google+, Facebook, Youtube 및 Twitter 소셜 위젯이 포함 된 호버 드롭 다운 패널에서 각자 "원 클릭"하도록 나열된 작업 중입니다. 패널을 닫지 않고.Google+ 팔로우 버튼의 마우스 오버시 숨기기/표시 DIV 숨기기 포함

간단한 jquery 드롭 다운 메뉴에서 시작하여 단일 ul li div로 단순화했습니다. 따라서 단일 메뉴 항목 (Socialize)의 마우스 오버시 4 개의 모든 사회 위젯을 포함하는 div가 표시됩니다. 여태까지는 그런대로 잘됐다. 단일 메뉴 항목이나 4 개의 소셜 위젯이 포함 된 div 위로 마우스를 움직이면 표시되는 상태로 유지되고 div 외부로 이동하면 숨길 수 있습니다.

내가 겪고있는 문제는 Google+ 위젯에 마우스를 올리면 선택하려는 서클을 선택하는 자체 작은 드롭 메뉴가 열리는 팔로우 버튼이 있다는 것입니다. 이 Google+ 드롭 메뉴가 나타나면 부모 div는 더 나은 용어가 없기 때문에 "포커스"를 잃고 포함 div는 숨 깁니다. 나는 Google+ 위젯을 자세히 조사해 보았고 일부 div를 선택하여 간단한 jquery 드롭 다운 스크립트에 행운을 추가했습니다.

Google+ 위젯 팔로우 버튼을 클릭하면 포함 된 div를 열어 둘 수있는 방법을 아는 사람이 있습니까?

여기 내 간단한 jquery입니다.

$(function(){ 
    $('ul.dropdown li').hover(function(){ 
     $(this).addClass("hover"); 
     $('ul:first',this).css('left', '-200px'); 
     //$('ul:first',this).css('display', 'block'); 

    }, function(){ 
     $(this).removeClass("hover"); 
     $('ul:first',this).css('left', '-2000px'); 
     //$('ul:first',this).css('display', 'none'); 
    }); 
}); 

주석되는 두 줄

은 원래 숨기기/표시했지만, 위젯이 숨겨진 사업부에서 제대로로드되지 않는 문제로 인해, 나는 볼을 유지하고 단지의 측면 떨어져 그것을 셔플하기로 뷰포트. 전체 sperarate 문제. 부모님 DIV가 사라지는 원인으로 Google+ Follow Button 마우스 오버를 해결하면됩니다.

편집 : 여기에 더 자세한 설명을위한 사이트가 있습니다. http://www.lawncaremarketingexpert.com/

+0

범프. 나는 아직도이 문제에 대한 해결책을 찾고있다. 지금까지 주어진 유일한 해결책은 google + 위젯의 드롭 다운 메뉴에 jquery show div를 추가하여 부모 div를 계속 표시하는 것입니다. 그러나 Google + 위젯에서 div의 selector 이름을 모르므로 해결책이 아닙니다. 누구나 작동 가능한 솔루션을 제공 할 수 있습니까? 도움에 감사드립니다. – Allan

+0

거의 1 년 후 나는이 질문에 답할 수 없습니다. 이 드롭 메뉴를 사용하면서이 문제를 해결하고 싶습니다. 아마도 더 나은 해결책은 마우스를 놓을 때 메뉴의 붕괴를 유발하는 드롭 메뉴 주위에 핫 존을 갖는 것입니다. 어떤 사람이 충분히 빠르게 마우스를 움직이면 우발적으로 열려있을 수 있다는 것을 알았지 만,이 문제를 방지하기 위해 메뉴 주변의 핫 존을 너무 크게 만들 수있었습니다. 누구든지 외부 영역이 moused 때까지 눈에 띄는 좋은 (간단한) 드롭 메뉴 예제 날 가리킬 수 있습니까? 물론 원래의 문제에 대한 해결책 일 수도 있습니다. :) – Allan

답변

0

Google+ div의 mouseover 이벤트에서 'event.stopPropagation()'을 사용할 수 있습니다. 이런 식으로 뭔가 :

$('<Google+ div selector>').mouseover(function(e){ 
e.stopPropagation(); 
}); 

해결 방법 :

$('<Google+ div selector>').mouseover(function(e){ 
    jQuery('<parent dropdown panel selector>').show(); 
    }); 
+0

나는 행운을 빌어 Google+ 위젯에서 추출한 소수의 셀렉터를 사용하여 이것을 시도했습니다. 정확한 선택기를 찾을 수 없어서 어둠 속에서 촬영하고 있습니다. – Allan

+0

setInterval을 사용하여 autoplay() 함수와 관련이 있다고 생각합니다. 디버그해야 할 수도 있습니다. @Allan – skewl84

+0

Google+ div selector를 모른다. 그것이 무엇인지 알거나 jquery를 통해 그것을 찾는 방법이 있으면 제게 알려주십시오. 귀하의 솔루션을 이해하지만 실제 셀렉터 없이는 아무 것도 해결하지 못합니다. 그게 내가 찾을 수없는 것입니다. 해결 방법은 도움을 위해 여기에 게시하기 전에 처음에 시도한 것입니다. 올바른 선택기를 찾지 못했거나 Google+ 위젯의 복잡한 구조로 인해 문제라고 생각했습니다.당신은 내가 실제로 그것을 찾고 있다고 제안하는 것 같지만 슬라이더의 페이지에 포함 된 jquery로 인해 작동하지 않습니다. – Allan

관련 문제