javascript - jQuery UI 选项与方法

标签 javascript jquery jquery-ui

jQuery UI 小部件选项和方法之间的语义区别是什么?

使用定义值选项的选项对象初始化 slider 小部件。

$('#mySlider').slider({ value: 10});

获取值选项。

var optValue = $('#mySlider').slider('option', 'value');

获取值(value)。

var methodValue = $('#mySlider').slider('value');

optValue 和 methodValue 是否可以不同?

最佳答案

简短的回答是,没有语义的区别。 option 仅调用底层的 get/set。

关于小部件方法:当您调用 $(element).widget("someMethod", parameters) 时(出于问题的目的)调用到 widgetPrototype.someMethod(parameters)

widget.("option", property) 是 widget 方法的一个特例。作为 getter,它直接进入底层 options 对象,但作为 setter 调用 widget._setOptions() 函数。来自文档:

option( options )

Returns: jQuery (plugin only)

Sets one or more options for the widget.

options Type: Object A map of option-value pairs to set.

下面是发生的事情的分割:

$('#mySlider').slider({ value: 10});
// call the slider widget's initialiser with parameter {value:10}

var optValue = $('#mySlider').slider('option', 'value');
// call the slider widget's .option() method with parameter value

var methodValue = $('#mySlider').slider('value');
// calls the slider widget's .value() method.
//
// EDIT: Yes, this CAN be different from .option(value)
// It falls on the implementer to document their widget well
// enough that users know what's going on
//
// Having said that, I have yet to see a popular jquery widget
// where .someWidgetOption() is not just a shortcut to .option("someWidgetOption")

文档非常好:http://api.jqueryui.com/jQuery.widget/

关于javascript - jQuery UI 选项与方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23657757/

相关文章:

javascript - 在文本字段中显示比日期选择器日期晚 3 天的日期

javascript - 使用 switch 语句更改 div 背景颜色

jquery - 仅针对移动设备显示 Bootstrap 模式,不适用于桌面设备

javascript - Bootstrap 4 崩溃有延迟

javascript - 在页面加载后在 li 上添加类删除

jquery - invalidHandler setDefault 在 $.validator 调用 -jquery 验证插件中被忽略

javascript - 来自 jQuery 的回调没有到达 Controller/Action

javascript - 使用 jQuery 单击后更改按钮的文本

javascript - 试图让 HTML 表格与 document.write 一起出现在 Javascript 中

javascript - 获取多个输入文件的图像预览