typeof document.getElementById('foo').bar('value') //returns "number"
我想改变'价值'。
console.log(document.getElementById('foo').bar('value')) // 10
我不能只是数字的值,它会合理地抛出一个错误:
document.getElementById('foo').bar('value')) = 12 // ReferenceError: Invalid left-hand side in assignment
10 = 12 // ReferenceError: Invalid left-hand side in assignment
你如何设置bar的值?
这个特殊的例子适用于jquery提供的滑块,所以实际的代码(我试图改变它的值看起来像这样:
$('#slider').slider.val(function (index, value) {
return value + '' + deltaY + '%'})
但是我在这里粘贴了一个长错误:https://gist.github.com/2e65bbf1578f7ea27bb0
“...}没有方法'val'”
答案 0 :(得分:0)
如果要设置输入元素的value属性,它始终是一个字符串(设置时将转换为一个字符串)。
bar()
方法的调用返回一个值(不是“指针”),当然也不能分配给它。您需要做的是函数返回不同的结果显然在很大程度上取决于该函数。
error you get来自表达式$('#slider').slider.val...
- $.fn.slider
,您在此处访问的函数,没有属性“val”(因此您无法调用)。你想在那里做什么?阅读您仔细使用的滑块插件的文档。
答案 1 :(得分:0)
无论是什么:
$('#slider').slider
没有方法调用val()
因此,调用$('#slider').slider.val(...)
显然不起作用。
没有测试过,但是slider
可能是一个返回对象的函数吗?
$('#slider').slider().val(...)
答案 2 :(得分:0)
我认为这个问题的标题和第一部分是红鲱鱼。
我相信您正在尝试使用JQuery UI滑块方法?如果是这样,那就像Bergi建议并阅读文档一样。如果我正确理解您的需求,那么您应该注意以下内容: http://jqueryui.com/demos/slider/
在“值”部分的“选项”标签下
代码示例
使用指定的值选项初始化滑块。
$( ".selector" ).slider({ value: 37 });
在init之后获取或设置值选项。
//getter
var value = $( ".selector" ).slider( "option", "value" );
//setter
$( ".selector" ).slider( "option", "value", 37 );