簡體   English   中英

jQuery Jqui模態窗口:多次打開相同的模態

[英]Jquery Jqui Modal Window: opening same modal multiple times

我正在使用一個javascript函數打開一個jQuery模式窗口,並進行ajax調用以填充模式。 我包含了“左”和“右” div ID,單擊一個將更改模態窗口的內容(滾動瀏覽照片幻燈片)。

一切都很好,除了一件事:如果我打開模態然后將其關閉,則第二次打開它會導致這些“左/右”按鈕將每次點擊計數為兩次(單擊“右”一次,但將兩個圖像移到上方) 。 如果我關閉窗口並再次重新打開,則計數又增加了1(1次單擊后3次更改)。

解決此問題的唯一方法是在模式窗口關閉時重新加載頁面,但是有人知道更好的解決方案嗎? 基本上,我想“重置”模態窗口,但不想破壞它-我希望能夠多次打開/關閉模態並使這些左右按鈕起作用。

我用來創建這些按鈕的功能部分如下-謝謝您的任何建議/想法。

    function getNextImage(direction) {
        if(direction == 1) {
            if(imageNumber == 1) {
                    imageNumber = lastImage;
                } else {
                    --imageNumber;
                }
            }
        if(direction == 2) {
            if(imageNumber == lastImage) {
                    imageNumber = 1;
                } else {
                    ++imageNumber;
                }
            }
        if(direction == 0) {
            imageNumber = 1;
        }

        $.ajax({
            type: "GET",
            url: "phpIncludes/next_fetch.php",
            cache: false,
            data: {img : imageNumber, cap : imageNumber, width : dWidth, height : dHeight, a : album},
            success: function(htmlpic) {
                $("#left"+album).html(htmlpic);
            }
        });
    }

    $("#moveLeft"+album).click(function() {
        getNextImage(1);
        console.log("Image Number is: " + imageNumber);
    });

    $("#moveRight"+album).click(function() {
        getNextImage(2)
        console.log("Image Number is: " + imageNumber);
    });

在這一部分:

$ .ajax({類型:“ GET”,網址:“ phpIncludes / next_fetch.php”,緩存:false,數據:{img:imageNumber,cap:imageNumber,寬度:dWidth,高度:dHeight,a:相冊},成功:function(htmlpic){$(“#left” + album).html(htmlpic);}});

在將htmlpic添加到#left之前,proib首先將此內容#left清空並驗證其是否完成!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM