我有以下字符数插件:如果有超过9个字符,则添加警报类以将颜色更改为红色。 我想要的是当我说'如果字符数大于9 '时,用var替换数字9。
if(number_of_characters >= 9) {
因此,可以始终从插件选项调整此值,而不是在jQuery插件中更改此值。
我该怎么做?
答案 0 :(得分:2)
这是一个有效的Fiddle。
我所做的是添加一个新选项 - number_of_characters
(您可以根据需要命名):
$(textarea).CountCharacters({
Start_Count: 0,
Amount_Result: "counter",
Alert_Class: "alert-counter",
Amount_Limit: 19,
number_of_characters: 5
});
然后,我没有硬编码该值,而是提到了新选项:
if(number_of_characters >= options.number_of_characters) {
$("#"+options.Amount_Result).addClass(options.Alert_Class);
}
我还设置了一个新的默认选项:
var defaults = {
Start_Count: 0,
Amount_Result: false,
Alert_Class: false,
number_of_characters: 9
}
答案 1 :(得分:0)
您可以向defaults
对象添加新属性,并从中读取。然后可以根据需要覆盖每个实例。试试这个:
// declaration:
var defaults = {
Start_Count: 0,
Amount_Result: false,
Alert_Class: false,
maximumCharacters: 9
}
// usage:
if (number_of_characters >= options.maximumCharacters) {
$("#" + options.Amount_Result).addClass(options.Alert_Class);
} else {
$("#" + options.Amount_Result).removeClass(options.Alert_Class);
}
答案 2 :(得分:0)
使用选项Amount_Limit
$(textarea).CountCharacters({
Start_Count: 0,
Amount_Result: "counter",
Alert_Class: "alert-counter",
Amount_Limit: 9
});
if(number_of_characters >= options.Amount_Limit)