亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

我要瘋了?。?!求大神?。。。槭裁词髽艘频缴厦嬷挥|發第一個startMove在移上面一次才出發那里面的第二個startMove

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<script type="text/javascript">
function getStyle(obj, attr) {
?? ?if(obj.currenStyle){
?? ??? ?return obj.currentStyle[attr];?? ?
?? ?}
?? ?else {
?? ??? ?return getComputedStyle(obj,false)[attr];?? ?
?? ?}
}
function startMove(obj,json,fn){
?? ?var flag = true;
?? ?clearInterval(obj.timer);
?? ?obj.timer = setInterval(function() {
?? ??? ?for(var attr in json)
?? ??? ?{
?? ??? ??? ?//1.取當前值
?? ??? ??? ?var icur = 0;
?? ??? ??? ?if(attr=='opacity'){
?? ??? ??? ??? ?icur = Math.round(parseFloat(getStyle(obj,attr))*100);//當前透明度
?? ??? ??? ?}
?? ??? ??? ?else{
?? ??? ??? ??? ?icur = parseInt(getStyle(obj,attr));
?? ??? ??? ?}
?? ??? ??? ?//2.算速度
?? ??? ??? ?obj.speed = (json[attr]-icur)/8;
?? ??? ??? ?obj.speed = obj.speed>0?Math.ceil(obj.speed):Math.floor(obj.speed);
?? ??? ??? ?//3.檢測停止
?? ??? ??? ?if(json[attr]!=icur) {
?? ??? ??? ??? ?flag = false;
?? ??? ??? ?}
?? ??? ??? ?if(attr=='opacity'){
?? ??? ??? ??? ?obj.style[attr] = (icur+obj.speed)/100;
?? ??? ??? ?}
?? ??? ??? ?else{
?? ??? ??? ??? ?obj.style[attr] = icur + obj.speed + 'px';?? ?
?? ??? ??? ?}?? ?
?? ??? ?}
?? ??? ?if(flag){
?? ??? ??? ?clearInterval(obj.timer);
?? ??? ??? ?if(fn){
?? ??? ??? ??? ?fn();
?? ??? ??? ?}
?? ??? ?}
?? ?},30);
}
window.onload=function(){
?? ?var move = document.getElementById('move');
?? ?var a = move.getElementsByTagName('a');
?? ?for(var i = 0;i<a.length;i++){
?? ??? ?a[i].onmouseover = function(){
?? ??? ??? ?var a_this = this.getElementsByTagName('img')[0];
?? ??? ??? ?startMove(a_this,{top:-10,opacity:0},function(){
?? ??? ??? ???? a_this.style[top] = 20 +'px';
?? ??? ??? ??? ?startMove(a_this,{top:10,opacity:100});?? ?
?? ??? ??? ?});
?? ??? ?}
?? ?}
}

</script>
<style type="text/css">
*{
?? ?margin: 0;
?? ?padding: 0;
?? ?text-decoration: none;
?? ?font-size:13px;
?? ?text-decoration:none;
}
#move{
?? ?margin:50px auto;
?? ?width:245px;
?? ?height:245px;
?? ?background-color:#eee;
}
#move a{
?? ?display:block;
?? ?width:55px;
?? ?height:75px;
?? ?position:relative;
?? ?margin-left:5px;
?? ?margin-top:5px;
?? ?border-radius:3px;
?? ?color:#000;
?? ?float:left;
?? ?background-color:#fff;
?? ?overflow:hidden;
}
#move a:hover{
?? ?color:#C60;
}
#move a img{
?? ?position:absolute;
?? ?top:10px;
?? ?left:12px;
?? ?display:block;
?? ?text-align:center;
?? ?opacity:1;
?? ?border:none;
}
#move a p {
?? ?display:block;
?? ?position:absolute;
?? ?top:50px;
?? ?left:12px;
?? ?margin-left:2px;
?? ?text-align:center;
}

</style>

</head>
<body>
?? ?<div id="move">
?? ??? ?<a href="#"><img? src="image/1.jpg" /><p>保險</p></a>
??????? <a href="#"><img? src="image/2.jpg" /><p>旅行</p></a>
??????? <a href="#"><img? src="image/3.jpg" /><p>游戲</p></a>
??????? <a href="#"><img? src="image/4.jpg" /><p>彩票</p></a>
??????? <a href="#"><img? src="image/5.jpg" /><p>電影</p></a>
??????? <a href="#"><img? src="image/6.jpg" /><p>點外賣</p></a>
??????? <a href="#"><img? src="image/7.jpg" /><p>理財</p></a>
??????? <a href="#"><img? src="image/8.jpg" /><p>找服務</p></a>
??????? <a href="#"><img? src="image/9.jpg" /><p>音樂</p></a>
??????? <a href="#"><img? src="image/10.jpg" /><p>水煤電</p></a>
??????? <a href="#"><img? src="image/11.jpg" /><p>火車票</p></a>
??????? <a href="#"><img? src="image/12.jpg" /><p>更多</p></a>
??? </div>
</body>
</html>

正在回答

2 回答

額。。。判斷條件不對,你把flag定義在外面,而function作用域中把flag設為false,每次沒有重置,把flag放進去就可以了。

?obj.timer = setInterval(function() {

? ? ? ? for(var attr in json)

? ? ? ? {

? ? ? ? ? ? //1.取當前值

? ? ? ? ? ? var icur = 0;

? ? ? ? ? ? var flag = true;


3 回復 有任何疑惑可以回復我~
#1

fluent 提問者

膜拜!跪謝!
2015-08-05 回復 有任何疑惑可以回復我~
#2

逃離星球

可是改完之后,圖片是能回來了,但是透明度是零點幾,回不到1了,這是為什么啊啊?
2016-04-10 回復 有任何疑惑可以回復我~

謝謝前面的各位大神。。已解決??!http://img1.sycdn.imooc.com//56f3d79d00012aed07810360.jpg

0 回復 有任何疑惑可以回復我~
#1

Sweetxxy

flag的位置改了之后依然沒有動畫效果,第一次onmouseenter執行第一個函數,第二次onmouseenter執行回調函數 這是怎么回事?
2016-06-15 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

我要瘋了?。?!求大神?。。。槭裁词髽艘频缴厦嬷挥|發第一個startMove在移上面一次才出發那里面的第二個startMove

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號