jSignature不是一个功能

时间:2018-05-28 15:47:34

标签: javascript jquery jsignature

我正在尝试在我的网站中使用jSignature,但它一直向我显示这个错误:

Uncaught TypeError: $(...).jSignature is not a function

我的代码是:

<div id="signature"></div>

$("#signature").jSignature();

我有Jquery 1.11.1:

<script src="https://code.jquery.com/jquery-1.11.1.js"></script>

在函数的JS之前调用Jquery。

我也曾尝试调用Jquery Mobile,调用$('#signature').jSignature({'UndoButton':false,color:"#000000",lineWidth:5});等,但它永远不会有效。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

好吧,我解决了这个问题。 问题是:我的插件文件中有Jquery 1.12.4。它可以在任何页面中正常工作,但是使用jSignature会使JS抛出错误。 我从插件中删除了Jquery(但保留了CDN),现在它工作正常。

我已经发现了很多关于此的问题,但从来没有回答过。 希望这可以帮助那里的任何人。

非常感谢

答案 1 :(得分:0)

我使用jQuery 3.4,遇到了同样的问题。我不太确定问题出在哪里,但这是幻影。 首先,我将所有推荐的库添加到我的项目中,并访问了用于以下目的的元素:

<script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script>
<script src="/jSignature.min.noconflict.js"></script>
...
$(`#id`).jSignature();

我收到了相同的jSignature is not a function

此后,我认为问题可能出在jQuery版本兼容性上,所以增加了几行:

<script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script>
<script src="/jSignature.min.noconflict.js"></script>

<script src="https://code.jquery.com/jquery-1.12.4.min.js"
        integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
        crossorigin="anonymous"></script>
<script>
  var jq_1_12 = $.noConflict(true)
</script>
...
jq_1_12(`#id`).jSignature();

它一直抛出相同的错误jSignature is not a function

最后 我删除了最后的更改和jquery 1.12导入。问题是自己解决的,不知道发生了什么。但是该插件现在可以正常运行了