js仿百度有啊通欄展示效果實作程式碼_javascript技巧
效果圖如下:
頁面代碼:
>
body,div,dl,dt,dd ,ul,li,h3{margin:0;padding:0;}
body{color:#333;font:12px/1.5 arial;}
li {list-style:none;}
a :link,a:visited,a:active{color:#333;text-decoration:none;}
a:hover{color:#F30;}
img{border:none;}
# box{width:740px;margin:10px auto;}
#container{position:relative;height:232px;background:#FCFCFC;}
#container .項目{位置:絕對;頂部:0;左:: 0;寬度:492px;高度:230px;溢出:隱藏;背景:#FAFAFA;邊框:1px實體#ddd;z-index:1;不透明度:1;}
#container .item .pic{float: left;width:210px;height:200px;display:inline;margin:15px;}
#container .item .pic img{width:210px;height:200px;vertical -align:top;#s .item .txt{float:left;width:250px;margin-top:12px;}
#container .item .txt dt{font-size:14px;font-重量:700;}
#container . item .txt .info{顏色:#999;}
#container .item .txt dd{高度:24px;行高:24px;}
#container .item .txt dd span{float:left;
#container .item .txt .star{position:relative;float:left;height:12px;width:69px;margin:6px 0 0 5px;}
#container .item .starstar . position:absolute;top:0;left:0;height:12px;width:69px;z-index:2;background:url(http://js.fgm. cc/learn/lesson10/img/youa/star. png) 重複x 滾動左上透明;}
#container .item .txt .star .star_grey{background:url(http://js.fgm.cc /learn/lesson10/img/youa/star.png) 重複x 向左捲動-15px 透明;高度:12px;寬度:69px;}
#container .item .txt .pink,#container .item .txt .藍色,#container .item .txt .green{顏色: #FFF;font-weight:700;margin-right:2px;背景:#F66B5B;padding:0 5px;}
#container .item .txt .blue {背景:#96BAE7;}
#container . item .txt .green{背景:#9CDBC3;}
#container .item .txt .comment{寬度:232px;高度:99px;邊距頂部:10px ;背景:#FFF;邊框:1px 實心#EAEAEA; }
#container .item .txt .comment h3{字體大小:12px;字體粗細:400;高度:24px;行高:24px;邊框-bottom:1pxsolid #E9E9E9;padding:0 10pxx; #container .item .txt .comment .comment_list{寬度:220px;高度:60px;溢出:隱藏;邊距:8px 0 0 10px;}
#container .item .txt .comment .comment_list ul{width: ;}
#container .item .txt .comment .comment_list ul li{height:20px;line-height:20px;white-space:nowrap; }
#container .item .txt .comment .comliment_list ul . b{color:#999;font-weight:400;}
#control{height:37px;text-align:center;background:url( http://js.fgm.cc/learn/lesson10/img/ youa/bg.png) no-repeat;}
#control span{width:8px;height:8px;font-size:0;line-高度:0;遊標:指標;顯示:內聯塊;背景顏色:#FEFEFE;邊框:1px實體#BCC1C5;邊距:13px 2px 2px;}
#control span.active{背景顏色:#848484 ;邊框:1px實線#6E6E6E;}
;
function Youa (obj)
{
this.obj = $(obj);
this.container = $("容器" );
this.control = $("control");
this.items = $$$("item", this.container);
this.iCenter = 2;
this. aSort = [];
this.timer = null;
this.oData = [
{left:0, zIndex:2, opacity:30},
{left:40, zIndex:3 , opacity:60},
{left:124, zIndex:4,不透明度:100},
{左:208,zIndex:3,不透明度:60},
{左:246, zIndex:2,不透明度:30},
{左:40 , zIndex:0, 不透明度:0}
];
this.__create__()
};
Youa. prototype.__create__ = function ()
{
var that = this;
var oSpan = null;
var i = 0;
for (i = 0; i {
that.items[i].number = i;
that.aSort[i] = that.items[i];
oSpan = document.createElement("span ");
oSpan.number = i;
that.control.appendChild(oSpan)
}
for (i = 0; i that.aSpan = $$("span", that.control);
that.control.onmouseover = function (ev)
{
var oEv = ev ||事件;
var oTarget = oEv.target || oEv.srcElement;
if (oTarget.tagName.toUpperCase() == "SPAN")
{
that.aSort.sort( function (a, b) {return a.number - b.number});
if (oTarget.number {
for (i = 0; i that.__set__();
回傳false
}
else if (oTarget.number > that.iCenter)
{
for (i = 0; i
回傳false
}
else
{
that.__set__()
}
}
}
this.__set__();
this.__switch__();
這個.__autoPlay__()
};
Youa.prototype.__set__ = function ()
{
var i = 0;
for (i = 0; i < this.aSort.length; i++) this.container.appendChild(this.aSort[i]);
for (i = 0; i < this.aSpan.length; i++) this.aSpan[i].className = "";
this.aSpan[this.aSort[this.iCenter].number].className = "active";
for (i = 0; i < this.aSort.length; i++)
{
this.aSort[i].index = i;
if (i < 5)
{
new Animate(this.aSort[i], this.oData[i]);
}
else
{
new Animate(this.aSort[i], this.oData[this.oData.length - 1])
}
}
};
Youa.prototype.__switch__ = function ()
{
var i = 0;
var that = this;
this.container.onclick = function (ev)
{
var oEv = ev || event;
var oTarget = oEv.target || oEv.srcElement;
var index = findItem(oTarget);
if (index < that.iCenter)
{
for (i = 0; i < that.iCenter - index; i++) that.aSort.unshift(that.aSort.pop());
that.__set__();
return false
}
else if (index > that.iCenter)
{
for (i = 0; i < index - that.iCenter; i++) that.aSort.push(that.aSort.shift());
that.__set__();
return false
}
function findItem (element)
{
return element.className == "item" ? element.index : arguments.callee(element.parentNode)
}
};
};
Youa.prototype.__autoPlay__ = function ()
{
var that = this;
that.timer = setInterval(function ()
{
that.aSort[3].click()
}, 3000);
that.obj.onmouseover = function ()
{
clearInterval(that.timer)
};
that.obj.onmouseout = function ()
{
that.timer = setInterval(function ()
{
that.aSort[3].click()
}, 3000)
}
};
function $ (id)
{
return typeof id === "string" ? document.getElementById(id) : id
};
function $$ (tagName, oParent)
{
return (oParent || document).getElementsByTagName(tagName)
};
function $$$ (className, element, tagName)
{
var i = 0;
var aClass = [];
var reClass = new RegExp("(^|//s)" + className + "(//s|$)");
var aElement = $$(tagName || "*", element || document);
for (i = 0; i < aElement.length; i++) reClass.test(aElement[i].className) && aClass.push(aElement[i]);
return aClass
};
function css (element, attr, value)
{
if (arguments.length == 2)
{
if (typeof arguments[1] === "string")
{
return element.currentStyle ? element.currentStyle[attr] : getComputedStyle(element, null)[attr]
}
else
{
for (var property in attr)
{
property == "opacity" ?
(element.style.filter = "alpha(opacity=" + attr[property] + ")", element.style.opacity = attr[property] / 100) :
element.style[property] = attr[property]
}
}
}
else if (arguments.length == 3)
{
switch (attr)
{
case "width":
case "height":
case "top":
case "left":
case "right":
case "bottom":
element.style[attr] = value + "px";
break;
case "opacity" :
element.style.filter = "alpha(opacity=" + value + ")";
element.style.opacity = value / 100;
break;
default :
element.style[attr] = value;
break
}
}
return element
};
function Animate (element, options, fnCallBack)
{
this.obj = $(element);
this.options = options;
this.__onEnd__ = fnCallBack;
this.__startMove__()
};
Animate.prototype.__startMove__ = function ()
{
var that = this;
clearInterval(that.obj.timer);
that.obj.timer = setInterval(function ()
{
that.__doMove__()
}, 30);
};
Animate.prototype.__doMove__ = function ()
{
var complete = true;
var property = null;
for (property in this.options)
{
var iCur = parseFloat(css(this.obj, property));
property == "opacity" && (iCur = parseInt(iCur.toFixed(2) * 100));
var iSpeed = (this.options[property] - iCur) / 5;
iSpeed = iSpeed > 0 ? Math.ceil(iSpeed) : Math.floor(iSpeed);
this.options[property] == iCur || (complete = false, css(this.obj, property, iSpeed + iCur))
}
complete && (clearInterval(this.obj.timer), this.__onEnd__ && this.__onEnd__.apply(this.obj))
};
window.onload = function ()
{
new Youa("box")
};
- 北京「七田阳光」全脑教育培训中心
- 点亮孩子智慧人生
- 总体评价:
- 用户印象:亲切耐心干净
用户评价
- Jcenter:如此诚恳的教育机构 ...
- citaslin:孩子的进步很大
- 甲鱼爱媛媛:七田阳光很注重品质,...
- 慕纱莹雪婚纱礼服馆
- 物超所值的性价比,尽在慕纱莹雪!
- 总体评价:
- 用户印象:精致做工好专业
用户评价
- 小企鹅快跑:这个周末去取了我定的...
- 月逢明时:这家婚纱店的婚纱做工...
- 日历本丢了:上周末去取了婚纱,婚...
- 北京金三优装饰有限责任公司
- 一站式服务让你省时、省力、省钱、省心
- 总体评价:
- 用户印象:口碑好规模很大讲信誉
用户评价
- 紫婧之梦:这家店不错哦!
- gotometop:装修工都还挺朴实的,...
- libangcheng1:这家公司还可以,去年...
- 鸿喜族休闲俱乐部—潘家园店
- 专注人类健康,打造财富传奇!
- 总体评价:
- 用户印象:真好专业手法好
用户评价
- 永封de铁盒:环境挺不错,灯光控制...
- 老冯爱国:不错的地方,是个很有...
- 白云寺方丈:我不会打台球,但朋友...
- 北京心拓城拓展培训
- 客户第一 执行有力 激情勤奋 简单团结
- 总体评价:
- 使用者印象:專業安全積極
使用者評價
- janice19891:很負責任~
- 旺達是條魚:朋友參加過他們的拓展...
- bjftxiaoniu:吼吼,在這裡看到他們...
- 韓醫師專業祛痘連鎖機構北京直營店
- 我們只祛痘所以更專業
-
整體評估:
- 使用者印象:效果好細心專業
使用者評價
- 天涯hehaijiao:這家店很好,顧客很多...
- 愛神馬geili:我治療了兩天感覺的好...
- 天上的語言:這幾天已經看到明顯效. ..
- 羅曼卡婚禮攝影
- 口碑好性價比高無額外消費
-
整體評價:
使用者印象:口碑好很喜歡完美
使用者評價
- 明確指出i:拍的很不錯,老媽都誇...
- 愛就一直走吧:他們家服務態度好,衣...
- 愛過你me:最後照片拍出來後朋友. ..

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python和JavaScript開發者的薪資沒有絕對的高低,具體取決於技能和行業需求。 1.Python在數據科學和機器學習領域可能薪資更高。 2.JavaScript在前端和全棧開發中需求大,薪資也可觀。 3.影響因素包括經驗、地理位置、公司規模和特定技能。

如何在JavaScript中將具有相同ID的數組元素合併到一個對像中?在處理數據時,我們常常會遇到需要將具有相同ID�...

學習JavaScript不難,但有挑戰。 1)理解基礎概念如變量、數據類型、函數等。 2)掌握異步編程,通過事件循環實現。 3)使用DOM操作和Promise處理異步請求。 4)避免常見錯誤,使用調試技巧。 5)優化性能,遵循最佳實踐。

實現視差滾動和元素動畫效果的探討本文將探討如何實現類似資生堂官網(https://www.shiseido.co.jp/sb/wonderland/)中�...

深入探討console.log輸出差異的根源本文將分析一段代碼中console.log函數輸出結果的差異,並解釋其背後的原因。 �...

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

用户评价