Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery.find()和.animate()_Javascript_Jquery - Fatal编程技术网

Javascript jQuery.find()和.animate()

Javascript jQuery.find()和.animate(),javascript,jquery,Javascript,Jquery,我正在做一个温度计,我正在制作温度计的动画。我有这样一种javascript方法: function setScoreBar(score) { var scoreBar = document.getElementById("dynamicScoreBar"); // var scoreBar = $(scoreBarElem); var height = 250; height = height - 20; var percentage = height

我正在做一个温度计,我正在制作温度计的动画。我有这样一种javascript方法:

function setScoreBar(score) {
    var scoreBar = document.getElementById("dynamicScoreBar");
    // var scoreBar = $(scoreBarElem);
    var height = 250;
    height = height - 20;
    var percentage = height / 100;
    scoreBar.find(".meter").animate({
         marginTop: (height - (score * percentage)) + "px"
    }, 400, function() {
        scoreBar.find(".meter").html(score + "%");
    });
}
我的html是这样的

<div id="dynamicScoreBar" class="scoreBar">
    <div class="meter">0%</div>
    <div class="red"></div>
</div>

0%

当我调试它时,我得到一个错误,即.find和.animate方法不存在。但是当我试图写它的时候,我得到了visual Studio的帮助,它向我展示了使用它的选项,所以它应该存在:P我可以使用其他东西吗?或者我有语法错误吗?

.find
.animate
是jQuery函数。当
scoreBar
是jQuery对象时,它们就存在了。当您使用
document.getElementById
分配它时,它不是
getElementById
是一个纯javascript函数,将返回一个DOM节点

如果您使用的是jQuery框架,那么可以通过使用
$(…)
将任何DOM节点包装成jQuery对象。对于您的特定场景,您可以完全重写变量赋值:

var scoreBar = $('#dynamicScoreBar');

。。。而
scoreBar
变量将是一个jQuery对象,具有
find
animate
功能。

.find
animate
是jQuery功能。当
scoreBar
是jQuery对象时,它们就存在了。当您使用
document.getElementById
分配它时,它不是
getElementById
是一个纯javascript函数,将返回一个DOM节点

如果您使用的是jQuery框架,那么可以通过使用
$(…)
将任何DOM节点包装成jQuery对象。对于您的特定场景,您可以完全重写变量赋值:

var scoreBar = $('#dynamicScoreBar');

。。。而
scoreBar
变量将是一个jQuery对象,具有
find
animate
功能。

完美!很好的解释!谢谢你,大卫!:)完美的很好的解释!谢谢你,大卫!:)