jQuery 插件覆盖默认设置中的 url
jQuery plugin overriding the url in default settings
嘿,我正在创建一个 jquery 插件,它的默认设置为
var settings = {
renderTo:'body',
width: 800,
height:900,
url:'miserables.json',
zoom:true,
loadingText:"loading...",
margin:{
top: -5,
right: -5,
bottom: -5,
left: -5
}
};
所以当我将此设置覆盖为
$(function(){
$('#diagram').renderSvg({
renderTo: '#diagram', // THIS IS WORKING
height:500, // THIS IS WORKING
width:200, // THIS IS WORKING
url:'check.json' //THIS IS NOT WORKING INSTEAD OF I'M GETTING DEFAULT URL
});
});
所以怎么能覆盖url。请帮帮我。提前致谢
通常您使用自定义设置扩展默认选项。为此,将 settings
初始化移动到 renderData
函数中并从 renderSvg
中调用它,例如:
this.renderData(options);
所以代码会变成:
$.fn.renderData = function (options) {
var options = $.extend({}, {
renderTo: 'body',
width: 800,
height: 900,
url: 'miserables.json',
zoom: true,
loadingText: "loading...",
margin: {
top: -5,
right: -5,
bottom: -5,
left: -5
}
}, options);
console.log(options.url);
// ...
};
和
$.fn.renderSvg = function (options) {
this.renderData(options);
// ...
};
嘿,我正在创建一个 jquery 插件,它的默认设置为
var settings = {
renderTo:'body',
width: 800,
height:900,
url:'miserables.json',
zoom:true,
loadingText:"loading...",
margin:{
top: -5,
right: -5,
bottom: -5,
left: -5
}
};
所以当我将此设置覆盖为
$(function(){
$('#diagram').renderSvg({
renderTo: '#diagram', // THIS IS WORKING
height:500, // THIS IS WORKING
width:200, // THIS IS WORKING
url:'check.json' //THIS IS NOT WORKING INSTEAD OF I'M GETTING DEFAULT URL
});
});
所以怎么能覆盖url。请帮帮我。提前致谢
通常您使用自定义设置扩展默认选项。为此,将 settings
初始化移动到 renderData
函数中并从 renderSvg
中调用它,例如:
this.renderData(options);
所以代码会变成:
$.fn.renderData = function (options) {
var options = $.extend({}, {
renderTo: 'body',
width: 800,
height: 900,
url: 'miserables.json',
zoom: true,
loadingText: "loading...",
margin: {
top: -5,
right: -5,
bottom: -5,
left: -5
}
}, options);
console.log(options.url);
// ...
};
和
$.fn.renderSvg = function (options) {
this.renderData(options);
// ...
};