/*
* 画像プレーヤー
* author:mr·zhong
* date:2010-04-19
*/
//現在のナビゲーション ページ番号
var currentPage = 1;
//画像間隔
var playerTime = 3000;
jquery(function(){
SetPlayerNavPosition();
OnLoadingImages();
OnLoadingLinks( ) ;
setInterval("Player()",playerTime)
});
/*
* 画像再生メソッド
*/
function Player(){
(jquery("#page_" currentPage));
if(currentPage == jquery("#playerNav a").length)
currentPage = 1;
else
}
/*
* 画像のページ番号を作成し、ページ番号のクリックイベントをバインドします
* count: 作成するページ数
*/
function CreatePageNberObj(count){
var Pages = '';
for(var i = 1; i <= (count - 1); i ){
pages = '
' i ''
}
jquery("#playerNav").html(pages); var i = 1; i <= count; i ){
BindPageClick("page_" i)
}
}
/*
* 画像コレクションをロードし、一意の画像の ID、最後に 1 つを表示し、他のものを非表示にします。
*/
function OnLoadingImages(){
var li_id = 1;
jquery("#playerImage li").each(function(){
jquery (this).attr("id","play_img_" li_id);
if(li_id > 1){
SetImageShowOrHide(jquery(this),false); >li_id;
});
}
/*
* 画像に対応するリンクセットをロードし、リンクに一意の ID を設定し、最後に他の */
function OnLoadingLinks(){
var a_id = 1;
jquery("#playerTitle a").each(function(){
jquery(this).attr("id" ,"link_" a_id);
if(a_id > 1){
SetImageShowOrHide(jquery(this),false);
a_id ;
CreatePageNberObj (a_id);
}
/*
* 画像ページ番号のクリック イベントをバインドする基礎となるメソッド
*/
function BindPageClick(id){
jquery(" #" id).click(function(){
PageClick(jquery(this));
});
}
/*
* 画像ページ番号 クリック処理方法
* obj: 現在のページ番号要素 object
*/
function PageClick(obj){
var id = obj.attr("idx")
//ページ番号がクリックされたときページ番号は自動的に再生されます。番号は currentPage Recorder に再割り当てする必要があります
currentPage = id;
//すべてのページ番号スタイルをデフォルトに設定します
jquery("#playerNav a").removeClass("hover) ");
//現在選択されているページ番号を設定します 指定した色の場合
SetPageColor(obj,true);
//画像の表示または非表示
jquery("#playerImage li") .each(function(){
if(jquery(this) .attr("id") == ("play_img_" id)){
SetImageShowOrHide(jquery(this),true);
} else{
SetImageShowOrHide(jquery(this),false);
}
});
//テキストチェーンの表示または非表示
jquery("#playerTitle a").each(function) (){
if(jquery(this).attr(" id") == ("link_" id)){
SetImageShowOrHide(jquery(this),true);
>SetImageShowOrHide(jquery(this),false);
}
});
}
/*
* 指定した要素または画像を表示するかどうかを設定します
* obj: 非表示にする必要がある要素
* isShow: 表示または非表示
*/
function SetImageShowOrHide(obj,isShow){
if(!isShow){
obj.fadeOut( 1000);
}else{
obj.fadeIn(2000);
}
* 指定された画像のページ番号のスタイルを設定します
* obj:設定が必要な要素
* isSelect: 選択するかどうか
*/
function SetPageColor( obj,isSelect){
if(!isSelect){
obj.removeClass("hover" );
}else{
obj.addClass("hover");
}
}
/*
* 画像番号のリンクと画像タイトルの DIV 位置を設定します
*/
function SetPlayerNavPosition(){
var offset = jquery("#playerBox").offset() ;
var boxHeight = jquery("#playerBox").height(); navHeight = jquery("#playerNavAndTitle").height();
jquery("#playerNavAndTitle").css( { top:(offset.top boxHeight - navHeight) 1 "px", left:offset.left 1 " px" });
}
デモ アドレス
ダウンロード アドレス