使用Jquery onClick更改多个元素如何?

时间:2012-12-30 19:51:49

标签: jquery replacewith

好的,我一直在努力研究如何做到这一点但失败了。我认为有可能使用Jquery replaceWith,但不知道如何实现它。

基本上我有这些导航图标:

<li><a href="#navclose" class="open"><span>MAINSTREAM</span><img src="images/stacks/mainstream.png" alt="MAINSTREAM" /></a></li>
    <li><a href=""><span>THOUGHT&nbsp;MENU</span><img src="images/stacks/thoughtmenu.png" alt="THOUGHTMENU" /></a></li>
            <li><a href="#"><span>Redrawing&nbsp;the&nbsp;Maps</span><img src="images/stacks/redrawnmaps.png" alt="Photoshop" /></a></li>

当点击每个图标时,我希望它更改信息(将网页加载到主iframe内容中),我想要更改的项目是URL“http://www.redrawingthemaps.org.uk/”和日期信息'2012年6月启动'在这里:

  <div id="navclose">
    <div id="navfunction" >
    <div id="searchbar"><ul class="navfunction2">
    <li>http://www.redrawingthemaps.org.uk/</li>
    </ul></div>
    <ul class="navfunction">
    <li style="margin-right:-2px;"><a href="#navclose" class="close">Close</a></li>
    <li><a href="http://www.redrawingthemaps.org.uk/" target="_blank">Open In New Window</a>    </li>
    <li>Initiated June 2012</li>
    </ul>
    </div>
    <div id="navcontent"><iframe src="http://www.redrawingthemaps.org.uk/" width="1000px" height="3000px" frameborder="0"></iframe></div>
    </div>



<script>
    $(function() {
    $('a.open').click(function() {
        $($(this).attr('href')).slideDown(500);
        return true;
    });
$(function() {
    $('a.close').click(function() {
        $($(this).attr('href')).slideUp(500);
        return false;
    });});
});});
  </script>

1 个答案:

答案 0 :(得分:1)

更新了所有可能性

根据类型查找包含文本的所有html元素并进行更改。

如果您需要更改多次,请创建一个函数。

var old = "http://www.redrawingthemaps.org.uk";
var new = "New data";

$('li:contains("'+old+'")').each(function() {
    $(this).html(new);
});

$('a[href="'+old+'"]').each(function() {
    $(this).attr("href",new);
});

$('iframe[src="'+old+'"]').each(function() {
    $(this).attr("src",new);
});