Replace Div with another Div

前端 未结 3 1379
悲哀的现实
悲哀的现实 2020-11-30 08:29

I have this thing I m trying to do. I have a main picture of a map and within that map there are regions. These regions have hot spots on them so you can click them and it w

相关标签:
3条回答
  • 2020-11-30 08:54

    HTML

    <div id="replaceMe">i need to be replaced</div>
    <div id="iamReplacement">i am replacement</div>
    

    JavaScript

    jQuery('#replaceMe').replaceWith(jQuery('#iamReplacement'));
    
    0 讨论(0)
  • 2020-11-30 09:02

    You can use .replaceWith()

    $(function() {
    
      $(".region").click(function(e) {
        e.preventDefault();
        var content = $(this).html();
        $('#map').replaceWith('<div class="region">' + content + '</div>');
      });
    
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    
    <div id="map">
      <div class="region"><a href="link1">region1</a></div>
      <div class="region"><a href="link2">region2</a></div>
      <div class="region"><a href="link3">region3</a></div>
    </div>

    0 讨论(0)
  • 2020-11-30 09:18

    This should help you

    HTML

    <!-- pretty much i just need to click a link within the regions table and it changes to the neccesary div. -->
    
    <table>
    <tr class="thumb"></tr>
        <td><a href="#" class="showall">All Regions</a> (shows main map) (link)</td>   
    
    <tr class="thumb"></tr>
    <td>Northern Region (link)</td>
    </tr>
    
    <tr class="thumb"></tr>
    <td>Southern Region (link)</td>
    </tr>
    
    <tr class="thumb"></tr>
    <td>Eastern Region (link)</td>
    </tr>
    </table>
    <br />
    
    <div id="mainmapplace">
        <div id="mainmap">
            All Regions image
        </div>
    </div>
    <div id="region">
        <div class="replace">northern image</div>
        <div class="replace">southern image</div>
        <div class="replace">Eastern image</div>
    </div>
    

    JavaScript

    var originalmap;
    var flag = false;
    
    $(function (){
    
        $(".replace").click(function(){
                flag = true;
                originalmap = $('#mainmap');
                $('#mainmap').replaceWith($(this));
            });
    
        $('.showall').click(
            function(){
                if(flag == true){
                    $('#region').append($('#mainmapplace .replace'));                
                    $('#mainmapplace').children().remove();
                    $('#mainmapplace').append($(originalmap));
                    //$('#mapplace').append();
                }
            }
        )
    
    })
    

    CSS

    #mainmapplace{
        width: 100px;
        height: 100px;
        background: red;
    }
    
    #region div{
        width: 100px;
        height: 100px;
        background: blue;
        margin: 10px 0 0 0;
    }
    
    0 讨论(0)
提交回复
热议问题