2012-03-26 5 views
1

키오스크를위한 사이트를 만들고 있으므로 사이트는 각 div 사이에 포토 슬라이드처럼 보입니다.한 번의 클릭으로 두 개의 기능을 수행합니다.

첫 페이지에 layover/mask를 넣었고 마우스 오버시 마스크가 제거되었습니다. 그런 다음 도중 하차를 제거하려면 마우스를 클릭

$("#item1").append('<div id="pageLayover"></div>'); 
$(document).click(function(){ 
    $("#pageLayover").remove(); 
}); 

매번 (사이드 참고로이 첫 페이지로 키오스크의 첫 번째 화면에 주소 표시 줄을 은닉하기위한 목적이다/DIV는이 태그입니다) 다른 시간을 클릭해야합니다. 그러면 첫 번째 태그 페이지가 두 번째 페이지로 넘어갑니다.

레이 아웃/마스크를 제거하고 동시에 첫 번째 페이지를 두 번째 페이지로 슬라이드시킬 수있는 방법은 두 가지가있을 수 있습니까?

여기 내 코드는 jsFiddle입니다. 모든 코드/링크/예제가 도움이 될 것입니다.

미리 감사드립니다.

+0

내가 확실히하지 않는 것이있다 : 당신은 MouseMove 이벤트에서 도중 하차를 제거, 그래서 누군가는 어떻게에 뭔가 클릭 수 그것이 마우스 이동에서 제거되면 도중 하차? – Hugo

+0

안녕하세요 Hugo, 답장을 보내 주셔서 감사합니다. 태그가있는 첫 번째 페이지에서 동시에 클릭 이벤트를 제거하고 트리거 할 수 있는지 파악하려고합니다. 불가능하다고 생각하십니까? 감사. – grumpypanda

답변

2

귀하의 질문은 매우 혼란,하지만 어쩌면 이것이 당신이 찾고있는 해답 :

사실 두 번 클릭의 경유에 클릭을하려면, 당신은 단순히 첫 번째 패널의 클릭 이벤트를 트리거 할 수 있습니다 :

$('#pageLayover').live('click', function(e) { // <-- updated! 
    $("#pageLayover").remove(); // remove our layover from the DOM 
    $panels.eq(0).click(); // <-- trigger click event of 1st element of $panels 
}); 

이렇게하면 패널에서 클릭이 발생했는지 확인하지 않습니다.


이 함께 다수의 도중 하차와 함께 문제를 해결할 수 :

$('#wrapper').scrollTo($(this).attr('href'), 800,{ 
    onAfter: function(id){ 
     if ($('#pageLayover').length == 0) {    // <--- new 
      $("#item1").append('<div id="pageLayover"></div>'); 
     }            // <--- new 
+0

안녕 니코, ​​귀하의 회신에 감사드립니다. 죄송합니다. 질문을 썼을 때 혼란 스러웠습니다. 당신의 코드는 http://jsfiddle.net/EXfnN/41/에 코드를 넣고 실행하면 첫 페이지 기능이 매력처럼 작동하지만, 내가 한 번 해보고 싶은 기능이있다. 이제 세 번째 페이지를 클릭하면 첫 페이지 대신 두 번째 페이지로 돌아갑니다. 세 번째 페이지를 클릭 할 수 없게 유지하고 첫 페이지로 자동 이동합니까? 매우 감사합니다! – grumpypanda

+0

@SamIAm 제 코드의 첫 번째 행을 업데이트했습니다. 스크롤을하는 동안 불행하게도 많은 layovers를 만드는 코드가 있습니다.이 문제를 해결하려면 코드를 자세히 살펴 봐야합니다. – Niko

+0

@SamIAm http://jsfiddle.net/EXfnN/44/ 참조 -이게 내가 원하는 방법 이니? 제가 언급 한 또 다른 문제는 첫 번째 페이지에 있고 두 번째 페이지로 계속 전달되는 경우 어두운 회색 영역 바깥을 실제로 클릭 할 수 있다는 것입니다. – Niko

관련 문제