使用JavaScript处理HTML属性值的语法

Syntax for Using JavaScript for HTML Attribut Values

本文关键字:语法 属性 HTML JavaScript 处理 使用      更新时间:2023-09-26

我试图用javascript代替html元素的属性值。我很确定我以前见过这样做,但我不确定语法是如何处理这些事情的。例子:

<a href="javascript:bookmarksite('Website Name', "<script type="text/javascript">document.write(location.href);
</script>')">Click Here to Bookmark this Page</a>

你可以这样做:HTML:

<a id="link" href="#">Click me</a>
JavaScript:

document.getElementById("link").setAttribute("href", "page.html");

不引人注目的JavaScript总是处理这类事情的好方法:

(function(d){
    var modern = function(){
        return(d.addEventListener);
    }, event = function(obj, evt, fn){
        if(modern()) {
            obj.addEventListener(evt, fn, false);
        } else {
            obj.attachEvent("on" + evt, fn);
        }
    }, load = function(fn){
        if(modern()) {
            d.addEventListener("DOMContentLoaded", function go(){
                d.removeEventListener("DOMContentLoaded", go, false);
                fn();
            }, false);
        } else {
            d.attachEvent("onreadystatechange", function go(){
                if(d.readyState === "complete") {
                    d.detachEvent("onreadystatechange", build);
                    fn();
                }
            });
        }
    }, init = function(){
        var link = d.getElementById("bookmark_link");
        event(link, "click", function(e){
            bookmarksite("Website Name", location.href);
            // Set attribute(s) here
            link.setAttribute("href", "whatever_you_want.html");
        });
    };
    load(init);
})(document);

然后在链接中:

<a href="#" id="bookmark_link">Bookmark this page</a>