5

私はJavaScriptについてほとんど知らないので、自分が何をしているのか正確にはわかりません。基本的に、私たちのチームは jQuery weekcalendar JavaScript を使用するプロジェクトに取り組んでいます。デフォルトでは、カレンダーは 1 週間全体を表示します。

私の問題は次のとおりです。別のJavaScriptを使用して呼び出すさまざまな画面に適合する複数のcssファイルがあります。最小の画面解像度の場合、モバイル用に呼び出したものとカレンダー全体がこの解像度の設定幅に収まらないため、現在の日だけを表示する必要があります。使用する必要がある Web サイトを見つけましたが、$('#calendar').weekCalendar("today")それを実装する方法と、if ステートメントに何を入れるべきかがわかりません。

私が試したコードは次のようになります。

<script type="text/javascript">
$(document).ready(function () {
    if (document.styleSheets('mobile.min.css')) {
        $('#calendar').weekCalendar('today');
    }
})

明らかに、それは機能しません。私はそれが間違っていると信じています。誰か助けてくれませんか?ありがとう。

4

1 に答える 1

1

私は Adapt js ライブラリを使用していませんが、それを見るとコールバック関数を実装できます。つまり、ページのサイズが変更されると、関数が呼び出されます。

そのため、ADAPT CONFIG の宣言でコールバックが設定されていることを確認してください。この場合

callback: ChangeCalendar

次に、ページのスクリプト タグまたは js ファイルで、コールバックを処理するためのコールバック関数が必要です。適用されるサイズに対応するインデックスを渡します。サイズの変更を処理するには、コールバック関数で switch ステートメントを使用することをお勧めします。

ChangeCalendar(index, width)
{
    switch (index) {
       // handles the first item in the range (0 to 760px)
     case 0: $('#calendar').weekCalendar('today');
     break;
      // handles the second item in the range (760 to 980px)
    case 1: //something else
      break;
    // handles everything we missed
    default:
    break;
   }
}

もちろん、幅パラメーターを使用するようにこれを変更し、if ステートメントを使用して一連の範囲を処理することもできます (例: if (width > 950) { etc })。

これで問題が解決することを願っています。

于 2012-09-13T06:57:08.880 に答える