用javascript替换新的HTML

用javascript替换新的HTML,javascript,html,dom,Javascript,Html,Dom,我正在尝试用javascript将列表项“…”替换为这行HTML“/code>” 有什么建议吗 当前: <div class="menu" id="menu"> <ul id="megaUber" class="megaMenu"> <li id="menu-item-3026" class="menu-item menu-item-type-custom menu-item-object-custom ss-nav-menu-item-4 ss-nav

我正在尝试用javascript将列表项“
  • ”替换为这行HTML“
  • /code>”

    有什么建议吗

    当前:

    <div class="menu" id="menu">
      <ul id="megaUber" class="megaMenu">
        <li id="menu-item-3026" class="menu-item menu-item-type-custom menu-item-object-custom ss-nav-menu-item-4 ss-nav-menu-item-depth-0 ss-nav-menu-reg">
          <a target="_blank" href="https://www.facebook.com/SocialFactor"><span class="wpmega-link-title">Facebook</span>
          </a>
        </li>
      </ul>
    </div>    
    
    
    
    所需结果:

    <div class="menu" id="menu">
      <ul id="megaUber" class="megaMenu">
        <li><a href="https://www.facebook.com/SocialFactor"><i class="icon-s-facebook"></i></a>
        </li>
      </ul>
    </div>
    
    
    
    尝试以下方法:

    $(“#菜单项-3026”)
    .html(“”)
    .prop(“id”和“);
    
    没有jquery:

    var el = document.querySelector("#menu-item-3026");
    el.innerHTML = "<a href=\"https://www.facebook.com/\"><i class=\"icon-s-facebook\"></i></a>";
    el.id = "";
    
    var el=document.querySelector(“菜单项-3026”);
    el.innerHTML=“”;
    el.id=“”;
    
    尝试以下方法:

    $(“#菜单项-3026”)
    .html(“”)
    .prop(“id”和“);
    
    没有jquery:

    var el = document.querySelector("#menu-item-3026");
    el.innerHTML = "<a href=\"https://www.facebook.com/\"><i class=\"icon-s-facebook\"></i></a>";
    el.id = "";
    
    var el=document.querySelector(“菜单项-3026”);
    el.innerHTML=“”;
    el.id=“”;
    
    您正在使用jQuery吗?如果是这样,您只需执行以下操作:

      $('#menu-item-3026').replaceWith('<li><a href="https://www.facebook.com/SocialFactor"><i class="icon-s-facebook"></i></a></li>')
    
    $(“#菜单项-3026”)。替换为(“
  • ”)
    您正在使用jQuery吗?如果是这样,您只需执行以下操作:

      $('#menu-item-3026').replaceWith('<li><a href="https://www.facebook.com/SocialFactor"><i class="icon-s-facebook"></i></a></li>')
    
    $(“#菜单项-3026”)。替换为(“
  • ”)
    为什么每个人都立即去jQuery?只用

    document.getElementById('megaUber').innerHTML = '<li><a href="https://www.facebook.com/SocialFactor"><i class="icon-s-facebook"></i></a></li>';
    
    document.getElementById('megaUber').innerHTML='
  • ';
    为什么每个人都立即去jQuery?只用

    document.getElementById('megaUber').innerHTML = '<li><a href="https://www.facebook.com/SocialFactor"><i class="icon-s-facebook"></i></a></li>';
    
    document.getElementById('megaUber').innerHTML='
  • ';
    假设没有jQuery,您有两个基本选项

    首先,使用DOM函数以编程方式创建节点

    第二个-使用简单的文本字符串进行更新,正如ioums刚刚建议的那样

    function byId(e){return document.getElementById(e);}
    function newEl(tag){return document.createElement(tag);}
    function newTxt(txt){return document.createTextNode(txt);}
    
    var container = byId('megaUber');
    container.innerHTML = '';
    
    var li = newEl('li');
    var a = newEl('a');
    a.setAttribute('href', "https://www.facebook.com/SocialFactor");
    
    var i = newEl('i');
    i.className = "icon-s-facebook";
    
    li.appendChild(a);
    a.appendChild(i);
    container.appendChild(li);
    
    当然,您也可以一次完成(不明白为什么执行速度不更快)

    var container=byId('megeUber');
    container.innerHTML=“
  • ”;
    假设没有jQuery,您有两个基本选项

    首先,使用DOM函数以编程方式创建节点

    第二个-使用简单的文本字符串进行更新,正如ioums刚刚建议的那样

    function byId(e){return document.getElementById(e);}
    function newEl(tag){return document.createElement(tag);}
    function newTxt(txt){return document.createTextNode(txt);}
    
    var container = byId('megaUber');
    container.innerHTML = '';
    
    var li = newEl('li');
    var a = newEl('a');
    a.setAttribute('href', "https://www.facebook.com/SocialFactor");
    
    var i = newEl('i');
    i.className = "icon-s-facebook";
    
    li.appendChild(a);
    a.appendChild(i);
    container.appendChild(li);
    
    当然,您也可以一次完成(不明白为什么执行速度不更快)

    var container=byId('megeUber');
    container.innerHTML=“
  • ”;
    这只是因为有些人使用它太多了,所以编写jquery比javascript更自然。这只是因为有些人使用它太多了,所以编写jquery比javascript更自然。