スクロールする HTML マーキーを含むワードプレス ページがいくつかあります。ページが読み込まれると、ajax 呼び出しを使用して SQL データベースからコンテンツがフェッチされ、マーキーが埋められます。すべてが機能しますが、ページに移動すると、マーキーが一番上に達し、最初からやり直します。ページを更新すると、すべてが期待どおりに機能します。問題が発生した場所にページが最初に移動したときです。
何かアドバイス?すべてのコンテンツが取得されてタグに挿入される前に、マーキーが開始されるようなものですか??
ワードプレスのhtml:
<script type='text/javascript' src='/scripts/dialog/js/jquery-ui-1.8.18.custom.min.js'> </script>
<script type='text/javascript' src='/scripts/dialog/js/jquery-1.7.1.min.js'></script>
<script type='text/javascript' src='/scripts/dialog/popupDialog.js'></script>
<div id="emptyMarquee" class="emptyMarquee-tall"></div>
<marquee class="marquee-tall" name="Compliance" direction="up" behavior="scroll" scrollamount="3">
<center>
</center>
</marquee>
popupDialog.js
$(function(){
//hide the empty marquee and the marquee wrapper
$("#emptyMarquee").hide();
$("#marquee").hide();
//get projects from server
var serviceArea = $("#marquee").attr("name");
var query = "serviceArea=" + serviceArea;
$.ajax({
type: "GET",
url: "/scripts/dialog/getMarqueeData.php",
data: query,
dataType: "json",
success: function(returnData){
if (!(returnData.aaData[0] == "none")){//atleast 1 project returned from db
$("#emptyMarquee").hide();
//create marquee element
$("#marquee").html("<marquee class='marquee-tall' direction='up' behavior='scroll' scrollamount='3'><center></center></marquee>");
var projArr = [];
for (var i = 0; i < returnData.aaData.length; i++) {
//returnData.aaData[i][0] - name
//returnData.aaData[i][1] - description
projArr.push("<strong>" + returnData.aaData[i][0] + "</strong> - " + returnData.aaData[i][1] + "</br></br>");
};
$.each(projArr,function(index, value){
$("marquee center").append(value);
})
$("#marquee").show();
}
else{//no projects returned from db, show emptyMarquee div, fill with msg
$("#marquee").hide();
$("#emptyMarquee").html("Please check back soon for updated " + serviceArea + " projects.");
$("#emptyMarquee").show();
}
}
})
});