2016-09-04 14 views
1

プリローダーが読み込みを停止してメインページに移行したくない。 プリローダーは3-4秒間ロードしてからページに自動的に移行するはずです。私はjquery/javascriptのものを削除しようとしました。しかし、私はそれを修正するオプションを見つけることができませんでした。プリローダーが停止せず、メインページへの切り替えが発生しない

ウェブでも解決策を探しましたが、どれも私を助けませんでした。

ご協力いただきありがとうございます。

jQuery(document).ready(function($) { 
 

 
    // site preloader -- also uncomment the div in the header and the css style for #preloader 
 
    $(window).load(function() { 
 
     $('#preloader').fadeOut('slow', function() { 
 
      $(this).remove(); 
 
     }); 
 
    }); 
 

 
});
.js div#preloader { 
 
    position: fixed; 
 
    left: 0; 
 
    top: 0; 
 
    z-index: 999; 
 
    width: 100%; 
 
    height: 100%; 
 
    overflow: visible; 
 
    background: #333 url('http://files.mimoymima.com/images/loading.gif') no-repeat center center; 
 
}
<?php 
 
/** 
 
* Maintenance mode template. This is shown to anyone that is logged out or not an administrator! 
 
* @package maintenance-mode 
 
* @copyright Copyright (c) 2016, ZartanLOL 
 
* @license GPL2+ 
 
*/ 
 
?> 
 

 
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta charset ="UTF-8"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <link rel="profile" href="http://gmpg.org/xfn/11"> 
 

 
    <link href="//fonts.googleapis.com/css?family=Roboto+Slab:400,700" rel="stylesheet" type="text/css"> 
 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> 
 

 
    <link rel="stylesheet" href="<?php echo plugins_url('assets/css/maintenance.css', dirname(__FILE__)); ?>"> 
 
    <link rel="stylesheet" href="<?php echo plugins_url('assets/css/mobile.css', dirname(__FILE__)); ?>"> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
 
    <script src="http://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.2/modernizr.js"></script> 
 
    <script src="<?php echo plugins_url('assets/js/preload.js', dirname(__FILE__)); ?>"></script> 
 

 

 
    <title>Maintenance Mode</title> 
 
</head> 
 
<body> 
 
    <div id="preloader"></div> 
 
    <div class="maintenance-mobile"> 
 
    <div class="maintenance-mobile-text"> 
 
     <h1>Maintenance</h1> 
 
     <p>This website is currently undergoing scheduled maintenance. We will be back shortly! Sorry for the inconvenience.</p> 
 
    </div> 
 
    <div class="maintenance-container"> 
 
     <a class="maintenance-login" href="<?php echo wp_login_url(); ?>">Go to Login Page</a> 
 
    </div> 
 
    </div> 
 
    <div class="maintenance-container"> 
 
    <a class="maintenance-login" href="<?php echo wp_login_url(); ?>">Go to Login Page</a> 
 
    </div> 
 
</body> 
 
</html>

答えて

3

まあ、私はあなたがこれを読んでお勧めします: https://jquery.com/upgrade-guide/3.0/

あなたはjQueryの3を使用しているが、あなたはjqueryの1.10+以来ほど非推奨になった機能を使用しています。

​​がjQuery 3から削除されました。ドキュメントが用意されています。変更速報

イベント

:.on( "準備"、FN)

を削除:.LOAD()、.unload()、および.ERROR()変更を破る

を削除しました変化破壊

:event.pageXとevent.pageY正規化変化を破る

を除去: jQuery.event.propsとjQuery.event.fixHooksは

を除去しました

変更速報:悪いセレクタと 委任イベントをすぐに

推奨されていませんスロー: .bind()と.delegate()

ユーザーなど

$(function(){ // this replaces document.ready 
    $(window).on("load", function(){ 
    $('#preloader').fadeOut('slow', function() { 
     $(this).remove(); 
    }); 
    }); 
}); 
として適切な現代jQueryの機能を

jQueryウェブサイトから、確認するための情報が少しあります。

これらのメソッドはイベント操作のショートカットですが、いくつかのAPIがあります。 制限事項イベントの.load()メソッドがajax .load() メソッドと競合しました。 DOMメソッドが定義されているため、window.onerror で.error()メソッドを使用できませんでした。 イベントをこれらの名前で添付する必要がある場合は、.on()メソッドを使用します。 $( "img")。(fn)から$(img).on( "load"、fn)に変更してください。

- コメントに対するコメント。

$(function(){ // this replaces document.ready 
    setTimeout(function(){ 
    $('#preloader').fadeOut('slow', function() { 
     $(this).remove(); 
    }); 
    }, 1500); 
}); 

を - あなたはそれに誤りがないかどうかを確認するためにあなたのコンソール(Windows上のF12)をチェックしまし:あなたは単にローダの除去を遅らせたい場合、それはこのように行きますか? - javascriptが実際に正しく組み込まれているかどうかを、あなたのソース(ctrl + Uのウィンドウ)でチェックしましたか?

+0

ありがとうございました。私はjqueryでかなり悪いです。だから。 - 時々、ページが読み込まれプリローダーが消えてプリローダーが回転し続けるという問題があります。プリローダーを常に3秒間ロードし、1時間または2時間に1回だけロードするには、何が必要ですか? – BPrepper

+0

@BPrepperこれはおそらくキャッシングと関係があります。あなたは、キャッシュが '$(window).on(" load ")関数を起動するとは限りません。実際には非常に悪い習慣です。試してみて、これを行う方法を見つけましょう。しかし、はい、あなたはちょうど安定した3秒のプリローダーを行うことができます(これは非常に長いですが、 'setTimeout()'関数を使って1.5秒以上かかることはお勧めしません)。 'setTimeout()'の詳細についてはこれを見てください:http://www.w3schools.com/jsref/met_win_settimeout.asp – NoobishPro

+0

ああ、ヘッダーの代わりにフッタにJavaScriptを入れてみることをお勧めしますか?数百のウェブサイトを構築した後、特に** Google Chrome **がヘッダーに含まれているときにJavaScriptのトリガー時間を浪費する傾向があることに気付きました。 (ヘッダーにjQueryを入れておきますが、フッタ内の/タグの直前にある関数スクリプト) – NoobishPro

関連する問題