AJAX 콜백을 기반으로하는 대부분의 콘텐츠를 사용하고 있습니다. 내 페이지의 링크 버튼을 클릭하면 모달이 팝업됩니다 (btn에 일부 클래스가 있고 jquery 이벤트가 발생하여 모달 팝업을로드하고 내용을 표시 함). 내 응용 프로그램에 사용 된 둘러보기 가이드는 지역 사회의 권장 사항에 따라 http://www.introjs.com에서 다운로드 한 Intro.js입니다.부모보기로 인해 발생하는 모든 이벤트를 실행하는 둘러보기 - Intro.js
IntroJs는 정상적인 루틴이 수행되는 한 정상적으로 작동합니다. 여기
그 (단지 관련 라인이 포함되어 있습니다)에 대한 내 코드입니다 :elementsArrays = getIntroElements(); // Get All the elements that can be in tour list
availableElements = getAvailableElements(elementsArrays) // Input the Array of Elements and Return Available Elements in page
TotalCount = availableElements.ids.length + availableElements.classes.length + 2; // Set the Object for ease-of-access
setUpIntroElements(); // SetsUp the route path for tourguide to move through
introJs().start(); // Starts the Tour Guide
하지만 링크 버튼을 클릭했을 때 투어 가이드가 진행 중일 때 (해당 버튼이 그 순간에 액세스 할 수 있습니다 (예 : 대상 강조 표시된 요소가 주 컨테이너이고 업데이트 버튼이 강조 표시된 영역의 일부이므로 클릭 가능).) 해당 모달 창이 튀어 나오지만 둘러보기가 아직 완료되지 않았습니다. 왼쪽/오른쪽 화살표 키를 누르면 introjs의 다음 데이터 단계가 모달 팝업 창 위에 나타납니다. (Modal popup window) 다음
는 투어 내 모달 창을 취소/종료 아래로
// Close the wizard on any button click or disabled clicking any button there in the page
$("body").on("click", ".filemgt-file-index a", function(e){
if($(".introjs-showElement")[0]) // case: the tour is in process
{
//e.stopPropagation(); // not working
e.stopImmediatePropagation() // not working
//var esc = $.event("keydown", {keyCode:27});
//$("body").trigger(esc); // didnt work at all
// Trigger the below event
// a.introjs-button.introjs-skipbutton
introJs().exit(); // Exit the Tour and Work on new set // doesn't work very well
// need to apply "press Esc event" programmatically in jquery
// Triggering event equavalent to pressing Esc button
// disable all events associated with it
introJs().exitIntro()
}
});
를 종료하려고 내 코드는 여전히 투어는 종료를 눌러되지 오른쪽 키 쇼를 화살표/왼쪽 해당 데이터 단계 요소 소개. 투어 가이드 내에서 링크 중 하나를 클릭하면 내가 달성하고자하는 (File Manager - Home (after Closing Modal popup))
이며, 투어는 종료해야하며, 새로운 모달은 모든 초점을 팝업합니다.
첨부 된 이미지는 상황이 무엇이고 정확히 무엇을 갖고 싶은지 보여줍니다. 살펴보고 문제를 진술하면 뭔가 알려주지 않으면 알려줘.
미리 감사드립니다. 축하해.
이이 : 내 JQUERY 파일에 아래의 코드를 삽입하도록 투어는이 버튼을 이탈은 클릭.. 좋은 해결책을위한 기초. 높은 anc에 클릭 핸들러가 있음. 에스 토르, 당신은 모든 클릭이 귀하의 처리기를 통해 실행하게됩니다. 귀하의 요구를 충족시킬 수있는 모든 앵커 링크를 통해 귀하의 경우. 핸들러를 윈도우의 "click"이벤트에 바인드하기로했다. 그런 다음 처리기는 hasClass ('introjs-overlay') 이벤트와 가장 가까운 ('introjs-tooltip') 이벤트 대상을 확인합니다. 두 조건 중 하나라도 선택하지 않으면 인트로 트로이 클릭이 발생하지 않으므로 둘러보기를 중지합니다. Thx 코드 빌더. – AAron
이것은 내가 한 일 (앵글, 그리고 내 자신의 webTourService)의 기초입니다 :'let ael = angle.element (element); if (! ael.hasClass ('introjs-overlay')) { let elTooltip = element.closest ('.introjs-tooltip '); if (! elTooltip) { webTourService.stopTour(); } }' – AAron