2011-05-09 289 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