jquery 模擬雅虎首頁的點擊對話框效果
更新時間:2010年04月11日 18:41:55 作者:
jquery模擬雅虎首頁的點擊對話框效果實現(xiàn)代碼,喜歡的朋友可以參考下。
這里說明下,這樣的效果腳本之家發(fā)過類似的效果。具體的可以到腳本下載中心查找。
<ul>
<Li><a >新聞</a></Li>
<li><a >體育</a></li>
<li><a >娛樂</a></li>
</ul>
CSS樣式:
ul{
float:left;
}
ul li{
display:block;
margin-top:15px;
width:100px;
position:relative;
}
a{
text-decoration:none;
color:#8000ff;
}
.show{
width:640px;
height:506px;
position:absolute;
top:-45px;
left:30px;
background:url(1.gif) no-repeat;
padding:45px 20px 35px 40px;
}
.close{
width:22px;
height:22px;
float:right;
display:block;
margin-top:-30px;
background:url(2.gif) no-repeat;
}
.quick{
position:absolute;
top:0px;
left:30px;
background:url(3.jpg) no-repeat;
width:37px;
height:26px;
font-size:12px;
color:white;
line-height:26px;
text-align:center;
}
JS代碼:
$(document).ready(function(){
$('ul li a').hover(function(e){
var quickw=$(this).parent().parent().find('#clickdiv');
if(quickw){
$('#clickdiv').remove();
}
$(this).parent().append('<div id="clickdiv">預覽</div>');
$('#clickdiv').addClass('quick');
$("#clickdiv").click(function(){
$(this).css('display','none');
var url=$(this).parent().find('a').attr('href');
var $basediv=$(this).parent().parent().find('#window');
if($basediv){
$('#window').remove();
$(this).parent()
.append("<div id='window'><div id='closebutton'><a href='#'></a></div><iframe frameborder='0' hspace='0' src='"+url+"' style='width:640px;height:506px;'></iframe></div>")
.fadeIn('slow');
$("ul li #window").addClass('show');
$('#closebutton a').addClass('close');
$('#closebutton a').click(function(){
$("ul li #window").remove();
});
}
});
效果圖:

聲明:我做的只是實現(xiàn)這個效果,在美觀上并沒有做到y(tǒng)ahoo主頁這么好看,所以不要介意!
原材料:



思路:
1:為每一個li標簽添加懸浮事件
2:構建iframe并獲取到當前l(fā)i標簽下的a元素的href屬性值
3:構建DIV包含iframe元素并顯示
HTML結構:
復制代碼 代碼如下:
<ul>
<Li><a >新聞</a></Li>
<li><a >體育</a></li>
<li><a >娛樂</a></li>
</ul>
CSS樣式:
復制代碼 代碼如下:
ul{
float:left;
}
ul li{
display:block;
margin-top:15px;
width:100px;
position:relative;
}
a{
text-decoration:none;
color:#8000ff;
}
.show{
width:640px;
height:506px;
position:absolute;
top:-45px;
left:30px;
background:url(1.gif) no-repeat;
padding:45px 20px 35px 40px;
}
.close{
width:22px;
height:22px;
float:right;
display:block;
margin-top:-30px;
background:url(2.gif) no-repeat;
}
.quick{
position:absolute;
top:0px;
left:30px;
background:url(3.jpg) no-repeat;
width:37px;
height:26px;
font-size:12px;
color:white;
line-height:26px;
text-align:center;
}
JS代碼:
復制代碼 代碼如下:
$(document).ready(function(){
$('ul li a').hover(function(e){
var quickw=$(this).parent().parent().find('#clickdiv');
if(quickw){
$('#clickdiv').remove();
}
$(this).parent().append('<div id="clickdiv">預覽</div>');
$('#clickdiv').addClass('quick');
$("#clickdiv").click(function(){
$(this).css('display','none');
var url=$(this).parent().find('a').attr('href');
var $basediv=$(this).parent().parent().find('#window');
if($basediv){
$('#window').remove();
$(this).parent()
.append("<div id='window'><div id='closebutton'><a href='#'></a></div><iframe frameborder='0' hspace='0' src='"+url+"' style='width:640px;height:506px;'></iframe></div>")
.fadeIn('slow');
$("ul li #window").addClass('show');
$('#closebutton a').addClass('close');
$('#closebutton a').click(function(){
$("ul li #window").remove();
});
}
});
相關文章
jquery.boxy彈出框(后隔N秒后自動隱藏/自動跳轉)
對于 Boxy彈出框的使用之前寫過一些文章(查看jquery.boxy基礎),今天主要是在解決一個需要之后,覺得值得把它記錄下來,所以就再寫一篇,主要功能是,在彈出對話框后,隔N秒后自動隱藏,還有就是自動跳轉2013-01-01
淺談jQuery中 wrap() wrapAll() 與 wrapInner()的差異
本文結合W3School的文檔,分析了jQuery中 wrap() wrapAll() 與 wrapInner()的差異,并給出了圖文對比教程,非常的簡單實用,有需要的朋友可以參考下2014-11-11
jQuery實現(xiàn)仿Google首頁拖動效果的方法
這篇文章主要介紹了jQuery實現(xiàn)仿Google首頁拖動效果的方法,涉及jQuery操作鼠標事件及div層的相關技巧,非常具有實用價值,需要的朋友可以參考下2015-05-05
jQuery實現(xiàn)點擊圖標div循環(huán)放大縮小功能
這篇文章主要介紹了jQuery實現(xiàn)點擊圖標div循環(huán)放大縮小功能,這是一個很常見很基礎的功能,下面小編通過實例代碼給大家介紹,需要的朋友可以參考下2018-09-09
JQuery統(tǒng)計input和textarea文字輸入數(shù)量(代碼分享)
本文主要介紹了jQuery實現(xiàn)統(tǒng)計輸入文字個數(shù)的方法,具有一定的參考價值,需要的朋友一起來看下吧2016-12-12

