虽然没有错误,为什么javascript函数不起作用?

时间:2016-11-22 17:11:19

标签: javascript jquery html phpbb3

这是代码:

<div id="one">
<div class="options-parameters-input">
This is testing
</div>
</div>
<br /><br /><br /><br /><br /><br /><br />
<table width="750" border="1" cellspacing="3" style="float:left;">
  <tr>
    <td>Type font size</td>
    <td><textarea id="heretype"></textarea></td>
  </tr>
</table>

$("#heretype").on("keyup",both);

function both(){
$(".options-parameters-input").css("fontSize", this.value + "px");
}

链接到jsfiddle

http://jsfiddle.net/gxTuG/106/

所以这段代码可以在jsfiddle中工作,你可以看到,但是当我将这段代码转移到我的phpBB主题时,由于某些未知的原因它无法正常工作......而且在Firefox Developer Tools中没有错误..所以我不知道为什么不工作?可能是个问题。

如果我尝试使用$("#heretype").addEventListener("keyup",both);代替.on 然后我收到错误:

  

TypeError:$(...)。addEventListener不是函数

包括此在内的所有javascript函数都存储在从页脚调用的.js文件中。

我也添加了console.log($('#heretype').length);

之后它只显示控制台中的数字1

请你帮帮我

谢谢

1 个答案:

答案 0 :(得分:1)

您需要将js部分声明为脚本,方法是将其包含在<script>标记中,如下所示:

<script type="text/javascript">

$.noConflict();

jQuery( document ).ready(function( $ ) {

    $("#heretype").on("keyup",both);
    function both(){
        $(".options-parameters-input").css("fontSize", this.value + "px");
    }
});

</script>

N.B。 type="text/javascript"用于向后兼容,但在新版浏览器中,不再需要它。