0

我正在尝试执行下面的 javascript,但出现未定义的错误。我只是想创建一个带有一些文本的 div 并在页面加载时将其放在 span 标签之前。虽然我的代码可能完全不符合要求:

<script type = "text/javascript">
function MMinsertPhoneinheader() {
     var div = document.createElement('div');
     div.innerHTML = ("<span> <p> Get Detailed Pricing </p> <br> <p> <b> (866)682-7927 </b></p> </span>");
     div.setAttribute('class', 'cust');
     document.getElementsByTagName('span')[5].appendChild(div);
     break;
};
MMinsertPhoneinheader();
</script>

任何帮助都会挽救生命。对不起菜鸟问题。谢谢!

这是新代码:

<script language="javascript">
function MMinsertPhoneinheader() {
  var div = document.createElement('div');
  div.innerHTML = ("<span> <p> Get Detailed Pricing </p> <br> <p> <b> (866)682-7927 </b></p> </span>");
   div.setAttribute('class', 'cust');
   document.querySelector(".toplinks").appendChild(div);
 };
MMinsertPhoneinheader();
</script>

我在第 3 行收到语法错误。

var div = document.createElement('div');
4

1 回答 1

0

摆脱 break 语句。这导致了你的问题。

另外,我建议使用 document.querySelector 而不是 getElementsByTagName('span')[5]。

那是脆的。使用 document.querySelector(),您可以只使用 css 选择器。

于 2013-01-09T20:06:35.740 回答