私はこれのために一日中グーグルで検索してきました...私はまだhtml/css/php/javascriptの初心者なので、おそらくいくつかの初歩的な間違いがありますが、それがあなたが私を助けるためにここにいる理由です! そのため、静的テンプレートと動的に読み込まれたコンテンツを備えた動的 Web サイトがあります。たとえば、「About Us」リンクをクリックすると、テンプレートは同じままですが、コンテンツは別の .php ファイルから読み込まれ、$_GET メソッドを使用して同じインデックスの iframe に出力されます。私は iframe を使用しているので、テンプレートのレイアウトには影響しません。私の問題は、ナビゲーション リンクのいずれかをクリックするたびにアニメーションを含む .js ファイルが実行されることです。そのため、たとえば、Web サイト全体が読み込まれるとフェードインすることができなくなります。リンクをクリックするたびに、ウェブサイト全体が消えて再びフェードインします。私はしません Google の使い方が間違っていることはわかっていますが、問題の解決策が見つかりません。リンクをクリックするたびにではなく、ページが読み込まれたときにそのスクリプトを 1 回だけ実行したい! コードの一部を次に示します。
index.php の一部:
<?php
include('setup/setup.php');
?>
<html>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="javascript.js"></script>
<body>
<div class="wrapOverall">
<div class="header">Logo, language buttons etc.</div>
<div class="wrapMainNav">Main navigation (Home, About us etc.)</div>
<div class="content">
<iframe src=<?php echo "content_$language/$pg.php"; ?> frameborder="0" style="width:951px; height:486px;">aaa</iframe>
</div>
</div>
</body>
</html>
ここで、「content_$language」はファイルを取得するフォルダー、「$pg.php」はファイル自体です。
setup.php ファイル:
<?php
error_reporting(E_ALL ^ E_NOTICE);
if($_GET['page'] == '')
{
$pg = 'naslovna';
}
else
{
$pg = $_GET['page'];
}
if($_GET['lang'] == '')
{
$language = 'cro';
}
else
{
$language = $_GET['lang'];
}
?>
javascript.js ファイル:
$(document).ready(function() {
$(".wrapOverall").hide(); //Hide the website
$("html").css("visibility", "visible");
var bg = new Image();
bg.src = "images/background.jpg";
bg.onload = function(){ //Load the background image
$("html").css("background-image", "url(images/background.jpg)");
$("html").css("background-repeat","no-repeat");
$("html").css("background-attachment", "fixed");
$("html").css("background-position", "center");
$(".wrapOverall").fadeIn(1000); //Fade in the site
$(".content").animate({height:'468px'},1000); //Animate content loading
}
});
それだけです。もっとコードが必要だと思われる場合は、送信できます。