2011-05-09 226 views
2

可能重複時如何更換一個DIV與另一:
Replace Div with another Div點擊HTML超鏈接

嗨,

我有2個導航菜單,我想什麼當客戶端點擊第一個菜單的鏈接時,應該用div id =「img2」替換div id =「img」,同樣當我點擊菜單2的鏈接時div id =「img2」應該被替換爲div id =「img」。任何意見或建議..

回答

5

像這樣的東西可以幫助你:

//Using jQuery Change div attribute "id" on click: 

$('#link_1_id').click(function(){ 
     $('#img').attr('id','img2'); 
}); 

編輯:哎呀不明白這個問題。要點擊一個鏈接元素時與另一個替換一個div:

HTML: 
<a href="#" id="link_1">Press me</a> 
<a href="#" id="link_2">Press me</a> 

<div id="div_1"> Content1 </div> 
<div id="div_2"> Content2 </div> 

Jquery: 
$(document).ready(function(){ 

    // Hide div 2 by default 
    $('#div_2').hide(); 

    $('#link_2').click(function(){ 
     $('#div_1').hide(); 
     $('#div_2').show(); 
    }); 

    $('#link_1').click(function(){ 
     $('#div_2').hide(); 
     $('#div_1').show(); 
    }); 
}); 

要添加滑動效果看一看.slideDown()slideUp()http://api.jquery.com/slideDown/

3

試試這個:

document.getElementById("img").innerHTML = document.getElementById("img2").innerHTML; 

在HTML

<a href="#" onclick="changeDiv(1)">Menu 1</a> 
<a href="#" onclick="changeDiv(2)">Menu 2</a> 
<div id="img"> 
//--- div content 
</div> 
<div id="img2"> 
//--- div content 
</div> 

在JS:

function changeDiv(i){ 
    if(i==1) 
     document.getElementById("img").innerHTML = document.getElementById("img2").innerHTML; 
    else 
     document.getElementById("img2").innerHTML = document.getElementById("img").innerHTML; 
} 
+0

我可以添加一個位的滑動效果像的一個圖像由其他的影子在更換或出 – 2011-05-09 12:02:59

+0

請嘗試此步驟:首先申請sha魚然後改變內容,然後應用淡入效果。 – 2011-05-09 12:05:48

+0

爲淡入淡出效果嘗試其中之一:http://www.javascriptkit.com/script/script2/fadeinout.shtml或http://www.switchonthecode.com/tutorials/javascript-tutorial-simple-fade-animation或http://stikiflem.wordpress.com/2008/09/11/javascript-div-fade-infade-out/ – 2011-05-09 12:13:51

1

嘗試這種情況:

HTML:

<a class="link_1" href="#">Link 1</a> 
<a class="link_2" href="#">Link 2</a> 
<div class="main" style="width:170px;height:170px;border:1px solid #000;overflow:hidden;padding:10px;position:relative;left:0;top:50px"> 
    <div class="wrapper" style="width:350px;position:absolute"> 
     <img src="image/Example.jpg" class="image_1 image" style="margin:10px;display:inline;height:150px; width:150px"/> 
     <img src="image/pr_4.jpg" class="image_2 image" style="margin:10px;display:inline;height:150px; width:150px"/> 
    </div> 
</div> 

JQUERY:

$('.link_1').click(function(){ 
    $('.wrapper').animate({'left':'-170px'},'linear'); 
}); 

$('.link_2').click(function(){ 
    $('.wrapper').animate({'left':'10px'},'linear'); 
}); 
+0

@Muhammad Awais你可以根據你的願望改變CSS屬性。 – thecodeparadox 2011-05-09 12:37:27