0

私は次のことをしたい、

  1. ホバー時に日付を選択する必要があります。

  2. カレンダー内で日付が選択されている場合、ホバー時に病棟のその要素からクラス(「選択済み」)を適用する必要があります。

以下のスクリプトでこの機能を実行しました。

    $("#WBECalBodyNav a").hover(function (e) {
            if ($("#WBECalBodyNav a.WBECheckIn").length != 0) {
                //Step 1: Check for the current element Parent.
                if ($(this).parent().attr("id") == "WBECalRightPane") {
                    //Step 2: Remove all selected classes before Checkin Class
                    $("#WBECalBodyNav").children().eq(1).find("a.WBESelected.WBECheckIn").prevAll().removeClass("WBESelected");
                    //Step 3: Find Checkin Class and remove Chekout class until current element.
                    $("#WBECalBodyNav").children().eq(1).find("a.WBESelected.WBECheckIn").nextUntil($(this)).removeClass("WBECheckOut");
                    //Step 4: Find Checkin Class and add Selected class until current element.
                    $("#WBECalBodyNav").children().eq(1).find("a.WBESelected.WBECheckIn").nextUntil($(this)).addClass("WBESelected");
                    //Step 5:Add Checkout Class for Current element 
                    $(this).addClass("WBESelected WBECheckOut");
                    //Step 6: Remove Selected,Checkout Class for current element next all elements
                    $("#WBECalBodyNav").children().eq(1).find($(this)).nextAll().removeClass("WBESelected WBECheckOut");
                    ////Step 7: Remove Checkout Class for current element next all elements
                    //$("#WBECalBodyNav").children().eq(0).find($(this)).nextAll().removeClass("WBECheckOut");
                }
                else {
                    //Step 2: Remove all selected classes before Checkin Class
                    $("#WBECalBodyNav").children().eq(0).find("a.WBESelected.WBECheckIn").prevAll().removeClass("WBESelected Chekout");
                    //Step 3: Find Checkin Class and remove Chekout class until current element.
                    $("#WBECalBodyNav").children().eq(0).find("a.WBESelected.WBECheckIn").nextUntil($(this)).removeClass("WBECheckOut");
                    //Step 4: Find Checkin Class and add Selected class until current element.
                    $("#WBECalBodyNav").children().eq(0).find("a.WBESelected.WBECheckIn").nextUntil($(this)).addClass("WBESelected");
                    //Step 5:Add Checkout Class for Current element 
                    $(this).addClass("WBESelected WBECheckOut");
                    //Step 6: Remove Selected,Checkout Class for current element next all elements
                    $("#WBECalBodyNav").children().eq(0).find($(this)).nextAll().removeClass("WBESelected WBECheckOut");
                    //Step 7: Remove Checkout Class for current element next all elements
                    //$("#WBECalBodyNav").children().eq(0).find($(this)).nextAll().removeClass("WBECheckOut");
                }
                //Step 8: Return False
                e.preventDefault();
            }
        });

個々の div 要素に対して機能していますが、合計 2 つの div 要素に対してこれが必要です。

つまり、最初の div で任意の日付を選択すると、2 番目の div で選択を続行できるはずです。

ただし、この現在のスクリプトは、この機能を実行するために機能していません。

ご提案をお願いします。

4

0 に答える 0