したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

589774さん:2008/10/13(月) 10:27:28 ID:CENbthlg0
ナビゲーターを作るだけでこんなにもソースがあるって言う。
---
function CreateNavi(){
var p = d.createElement("p");
p.className = "pagelink";
p.align = "center";

//戻る
if(page == 1){
p.appendChild(d.createTextNode("<"));
}else{
var a = d.createElement("a");
a.href = "javascript:void(0);";
a.onclick = function(){
self.Show(page - 1);
}
a.innerText = "<";
a.className = "prevpage";
AddMenuToElement(a);
p.appendChild(a);
}
p.appendChild(d.createTextNode(" "));

//prev 戻る
var i;
for(i = -3; i < 0; i++){
if(page + i >= 1){
var a = d.createElement("a");
a.href = "javascript:void(0);";
with({i: i}){
a.onclick = function(){
self.Show(page + i);
};
}
a.className = "pagelink_off";
a.innerText = page + i;
AddMenuToElement(a);
p.appendChild(a);
}
}


//current
var span = d.createElement("span");
span.className = "pagelink_on";
span.innerText = page;
AddMenuToElement(span);
p.appendChild(span);

//next 進む
var i;
for(i = 1; i <= 3; i++){
if(page + i <= maxpage){
var a = d.createElement("a");
a.href = "javascript:void(0);";
with({i: i}){
a.onclick = function(){
self.Show(page + i);
};
}
a.className = "pagelink_off";
a.innerText = page + i;
AddMenuToElement(a);
p.appendChild(a);
}
}

//進む
p.appendChild(d.createTextNode(" "));
if(page == maxpage){
p.appendChild(d.createTextNode(">"));
}else{
var a = d.createElement("a");
a.href = "javascript:void(0);";
a.onclick = function(){
self.Show(page + 1);
}
a.innerText = ">";
a.className = "nextpage";
AddMenuToElement(a);
p.appendChild(a);
}

return p;

function AddMenuToElement(a){
if(maxpage == 1) return;

a.oncontextmenu = function(){
var e = w.event;
var x = canvas.scrollLeft + e.clientX;
var y = canvas.scrollTop + e.clientY;
ShowPopup([{
str: "指定ページへ移動",
func: function(){
var ret = w.parseInt(w.prompt(["何ページ目?(1〜", maxpage,")"].join(""), ""));
if(!isNaN(ret)){
self.Show(ret);
}
},
},
{
str: "初めのページへ移動",
func: function(){
self.Show(1);
},
disabled: page == 1 ? true : false
},
{
str: "最後のページへ移動",
func: function(){
self.Show(maxpage);
},
disabled: page == maxpage ? true : false
}], x, y, "s_popup");

return false;
}
}
}


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板