将函数绘制为<DIV>

Drawing a function to <DIV>

本文关键字:DIV gt 函数 lt 绘制      更新时间:2023-09-26

感谢您的阅读和帮助。我正在尝试使用一个在特定div中绘制Dial的函数,但该函数不起作用。我知道这适用于文本:

<div id="content">
</div>
<script>
document.getElementById('content').innerHTML = "hi";
</script>

但是如果我想在那里写一些函数呢?我该怎么做?想象一下我有这个:

<div id="content">
</div>
<script>
document.getElementById('content').innerHTML = somefunction();
function somefunction(){
document.write("hi");
}
</script>

我知道如果我使用退货,它是有效的,但我想知道是否有一种方法可以做到不退货。

非常感谢!

编辑:

我会更具体一点。想象一下我有这个:

<div id="content">
</div>
<script>    
function createDial(){
document.write("<input class='knob' data-min='-15000' data-max='15000' value='-11000'>)
}
</script>

该输入创建一个拨号(请参阅http://anthonyterrien.com/knob/如果你不知道我指的是什么)。现在,有了这个,我可以画一个拨号"内容"吗?

谢谢大家,我为我的英语感到抱歉!

返回somefunction而不是document.write 的字符串

function somefunction(){
  return "hi";
}

您可以将元素名称传递给函数,并将html分配给那里的元素。

function somefunction(elementId){
   document.getElementById(elementId).innerHTML = "hi";
}

如果你真的需要在不返回值的情况下完成这项工作,你可以这样做:

function somefunction (elm) {
    elm.innerHTML = '<input class="knob" data-min="-15000" data-max="15000" value="-11000">';
    $(".knob").knob();
}
somefunction(document.getElementById('content'));

我只需要这个(我想Yoshi也提到了这个):

$( "#content" ).append("whatever you want, even an input or something else");

这就是我之前使用jQuery进行标记的原因。