처음에는 프로그래밍에 익숙하지 않으므로 부드럽게 다루십시오. 스택 오버플로는 훌륭한 리소스 였으므로 여러분 모두에게 감사드립니다.자바 스크립트/jQuery 팝업 루프 및 추가
이 하나 그래도 난 균열 수 없습니다, 당신은 아마도 암호 같은 제목으로 말할 수있는 것이, 어려운 검색 항목의 ... 어쨌든
, 나는 events.register에서 호출되는 jQuery를 팝업 기능이 제어. 기본적으로 사용자가지도를 클릭 할 때마다 웹 서비스에 요청을 보내고 데이터를 다시 가져온 다음 사용자가 상호 작용할 수있는 양식을 채우고 다시 SQL에 데이터를 저장합니다.
정말 잘 진행됩니다. 나는 그 진보에 만족합니다.
기능 중 하나는 테이블의 값을 변경하는 것입니다. 의도하지 않은 것을 실수로 저장하지 않도록 사용자에게 묻습니다. 새로 고침 후 처음에는 완벽하게 작동하지만 이후에는 매번 다섯 번에 다섯 개의 확인이 차례로 표시 될 때까지 하나의 확인을 추가 한 다음 다시 추가합니다. 일단 사용자가 코드를 클릭하면 코드가 정상적으로 실행되고 예상되는 결과를 얻습니다.
난 단지 그래, 내가 그것을 알아보기 힘들거나 잘못 포맷 된 경우 여기 내 기능, 죄송, 분실하고, 한 번에 확인 전화 (I 생각?)하지만 :
function popup() {
j = jQuery.noConflict();
j(document).ready(function() {
//open popup
j("#detailsform").height(250);
j("#detailsform").fadeIn(1000);
positionPopup();
document.getElementById("condition").value = getCondition;
j("#selCatHead").hide();
j("#cats").hide();
//dispose tree
j("#dispose").click(function() {
if (confirm("Are you sure?")) {
disposetree();
}
else { return false; };
});
//save defect
j("#savedef").click(function() {
saveDef();
});
//fade in defects
j("#adddefect").click(function() {
j("#detailsform").height(400);
j("#selCatHead").fadeIn(1000);
j("#cats").fadeIn(1000);
});
//fade out popup
j("#close").click(function() {
j("#detailsform").fadeOut(500);
});
}); // close document ready function
//position the popup at the center of the page
function positionPopup() {
if (!j("#detailsform").is(':visible')) {
return;
}
j("#detailsform").css({
left: (j(window).width() - j('#detailsform').width())/2,
top: (j(window).width() - j('#detailsform').width())/7,
position: 'absolute'
});
} // close positionPopup function
//maintain the popup at center of the page when browser resized
j(window).bind('resize', positionPopup);
}; // close popup function
편집 : 팝업 호출에서 @ jfriend00 덕분에 제거 기능과 핸들러를 해제 할 때마다, 예를 들면 : 다음
function popup() {
j = jQuery.noConflict();
j(document).ready(function() {
//open popup
j("#detailsform").height(250);
j("#detailsform").fadeIn(1000);
//dispose
j("#dispose").off();
j("#dispose").click(function() {
disposeClickHandle();
});
//save
j("#savedef").off();
j("#savedef").click(function() {
saveDef();
});
});
과 :
function disposeClickHandle() {
if (confirm("Are you sure?")) {
disposetree();
}
else { return false; };
};
를
답장을 보내 주셔서 감사합니다. @ jfriend00! 시간을 알 수 있습니다. 팝업에서 요소 당 하나의 .click (function())을 의미합니까 아니면 전체 함수에 대해 하나의 합계입니까? 그렇다면 사용자가 클릭 할 때 기반으로 다른 함수를 트리거하는 방법은 무엇입니까? 요소 –
생각해 보니, 균열을 줄이고 되돌릴 수 있습니다. –
@MorganEllingham - 각 요소에 대해'.click (fn)'을 한 번만 호출합니다. 두 번 이상 호출하면, – jfriend00