如何在javascript中创建一个元素

时间:2015-01-06 06:17:30

标签: javascript html

我使用JavaScript创建了一个DIV,我希望将其设为<a href>元素。

var element = document.createElement( 'div' );
element.className = 'element';
element.style.backgroundColor = 'rgba(0,127,127,' + ( Math.random() * 0.5 + 0.25 ) + ')';

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:0)

<div>元素没有href属性,您需要使用<a>。 如果您仍想使用行为类似于<div>的{​​{1}},则可以使用javascript来附加点击事件,这将触发位置更改(o无论您想要什么做):

<a>

答案 1 :(得分:0)

这里有一种方法可以转换具有使用JavaScript创建的DIV的页面,以便该元素被具有HREF属性的锚替换,如下所示:

function doit() {

var mydiv = document.getElementById( 'mydiv' );
document.getElementById('bod').removeChild( mydiv );
var element = document.createElement('a');
var node = document.createTextNode('php.net');
element.href="http://www.php.net";
element.appendChild(node);
document.getElementById('bod').appendChild( element );
}

function query() {
var ans = confirm("replace div with anchor?");
  if ( ans == true ){
    doit();
  }
}

var element = document.createElement( 'div' );
element.id = 'mydiv';
element.innerText = 'please click here';
element.className = 'element';
element.style.backgroundColor = 'rgba(0,127,127,' + ( Math.random() * 0.5 + 0.25 ) + ')';
element.style.width='220px';
element.style.height='150px';
element.onclick = query;
document.getElementById('bod').appendChild(element);    

如果有人想知道为什么有人会编写这样的代码,那么,几年前我为自己做了一个动态页面,这是一个很酷的效果。

此解决方案可与Google Chrome,Safari和Firefox一起运行。我在我的本地网络服务器上测试了脚本。

答案 2 :(得分:-1)

它是一个div ..而不是一个锚元素..因此改变它没有多大意义。如果你想让它像使用javascript的超链接那样你可以做到这一点

element.onclick = function(){
    document.location = 'http://www.google.com';
}