この記事の例では、JS 模造ポテトネットワークのフォーカス画像切り替えエフェクトをサムネイル付きで実装する方法を説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです。
<頭>
仿土豆网带缩略図の焦点図片切换効果
<スクリプトタイプ="text/javascript">
function $(id) { return document.getElementById(id); }
function moveElement(要素ID,final_x,final_y,interval) {
if (!document.getElementById) return false;
if (!document.getElementById(elementID)) return false;
var elem = document.getElementById(要素ID);
if (elem.movement) {
clearTimeout(elem.movement);
}
if (!elem.style.left) {
elem.style.left = "0px";
}
if (!elem.style.top) {
elem.style.top = "0px";
}
var xpos = parseInt(elem.style.left);
var ypos = parseInt(elem.style.top);
if (xpos == Final_x && ypos == Final_y) {
true を返します;
}
if (xpos
var dist = Math.ceil((final_x - xpos)/10);
xpos = xpos dist;
}
if (xpos > Final_x) {
var dist = Math.ceil((xpos - Final_x)/10);
xpos = xpos - dist;
}
if (ypos
var dist = Math.ceil((final_y - ypos)/10);
ypos = ypos dist;
}
if (ypos > Final_y) {
var dist = Math.ceil((ypos - Final_y)/10);
ypos = ypos - dist;
}
elem.style.left = xpos "px";
elem.style.top = ypos "px";
varrepeat = "moveElement('" elementID "',"final_x ","final_y ","interval")";
elem.movement = setTimeout(repeat,interval);
}
関数 classNormal(){
var focusBtnList = $('focus_change_btn').getElementsByTagName('li');
for(var i=0; i
focusBtnList[i].className='';
}
}
function focusChange() {
var focusBtnList = $('focus_change_btn').getElementsByTagName('li');
focusBtnList[0].onmouseover = function() {
moveElement('focus_change_list',0,0,5);
classNormal()
focusBtnList[0].className='current'
}
focusBtnList[1].onmouseover = function() {
moveElement('focus_change_list',-450,0,5);
classNormal()
focusBtnList[1].className='current'
}
focusBtnList[2].onmouseover = function() {
moveElement('focus_change_list',-900,0,5);
classNormal()
focusBtnList[2].className='current'
}
focusBtnList[3].onmouseover = function() {
moveElement('focus_change_list',-1350,0,5);
classNormal()
focusBtnList[3].className='current'
}
}
setInterval('autoFocusChange()', 5000);
var atuokey = false;
function autoFocusChange() {
$('focus_change').onmouseover = function(){atuokey = true}
$('focus_change').onmouseout = function(){atuokey = false}
if(atuokey) return;
var focusBtnList = $('focus_change_btn').getElementsByTagName('li');
for(var i=0; i
if (focusBtnList[i].className == 'current') {
var currentNum = i;
}
}
if (currentNum==0 ){
moveElement('focus_change_list',-450,0,5);
classNormal()
focusBtnList[1].className='current'
}
if (currentNum==1 ){
moveElement('focus_change_list',-900,0,5);
classNormal()
focusBtnList[2].className='current'
}
if (currentNum==2 ){
moveElement('focus_change_list',-1350,0,5);
classNormal()
focusBtnList[3].className='current'
}
if (currentNum==3 ){
moveElement('focus_change_list',0,0,5);
classNormal()
focusBtnList[0].className='current'
}
}
window.onload=function(){
focusChange();
}