繁体   English   中英

jQuery转换为纯JavaScript

[英]jQuery to plain javascript

我需要更改这部分jQuery。

$(function() {

$("#breadcrump").append("<div id='oldsite'>Can't find what you're looking for? Try our old website: <a href='http://www.brooksbarn.co.uk'>Old Website (brooksbarn.co.uk)</a>  or<a href='mailto:info@brooksbarn.co.uk?Subject=Brooksbarn.com Part Enquiry' target='_top'>E-Mail</a></div>");

});

在常规javascript中,我已经研究了很多方法,但是缺乏js知识似乎是我的绊脚石。

到目前为止,这是我想出的:

document.body.onload = addElement;

function addElement () { 
// create a new div element 
// and give it some content 
var newDiv = document.createElement("oldsite"); 
var newContent = document.createTextNode("Can't find what you're looking for? Try our old     website: <a href='http://www.brooksbarn.co.uk'>Old Website (brooksbarn.co.uk)</a>  or<a     href='mailto:info@brooksbarn.co.uk?Subject=Brooksbarn.com Part Enquiry' target='_top'>E-Mail</a>"); 
newDiv.appendChild(newContent); //add the text node to the newly created div. 
// add the newly created element and its content into the DOM 
var currentDiv = document.getElementById("breadcrump"); 
document.body.insertBefore(newDiv, currentDiv); 
}

您为什么不这样做:

document.getElementById("breadcrump").innerHTML += "<div id='oldsite'>Can't find what you're looking for? Try our old website: <a href='http://www.brooksbarn.co.uk'>Old Website (brooksbarn.co.uk)</a>  or<a href='mailto:info@brooksbarn.co.uk?Subject=Brooksbarn.com Part Enquiry' target='_top'>E-Mail</a></div>";

我认为您应该添加以下内容:

1您正在创建div,而不是旧站点标签

var newDiv = document.createElement("div");

2您需要设置ID

newDiv.id = "oldsite";

3您最初是在添加它:

document.body.insertBefore(newDiv, currentDiv.nextSibling);

http://jsfiddle.net/gf6gna1g/

您可以做几件事,最简单的方法就是将字符串设置为innerHTML

(function(){

    function addElem () {
        var newDiv = document.createElement("div");  //create div
        newDiv.id = "oldsite";  //sets id
        newDiv.innerHTML = "Can't find what you're looking for? Try our old     website: <a href='http://www.brooksbarn.co.uk'>Old Website (brooksbarn.co.uk)</a>  or<a     href='mailto:info@brooksbarn.co.uk?Subject=Brooksbarn.com Part Enquiry' target='_top'>E-Mail</a>";  //add html to new element
        document.getElementById("breadcrump").appendChild(newDiv);  //add it to the page
    }

    if (el.addEventListener) {
        window.addEventListener('load', addElem , false); 
    } else if (el.attachEvent)  {
        el.attachEvent('onload', addElem );
    }

}());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM