插件函数启动前调用函数

时间:2013-05-30 20:20:02

标签: javascript jquery xml

我有一个函数可以从某个标记中找到XML文件中的最高值,该标记必须在插件中指定一个默认值。我的问题是我的插件代码在另一个函数之前运行,因此返回null值。我可以在插件之前运行函数get_Highest_Property_Prise(),就像java构造函数一样吗?或者在插件代码启动之前如何初始化全局变量?

var pulgin_Global_Variables = {
    hight_price: ""
};

(function($) {

$.fn.SearchProperty = function (options) {

    var defaults = {
        S_MinPrice: 0,
        S_MaxPrice: get_Highest_Property_Prise()
    };

     alert("yo yo "+defaults.S_MaxPrice);
}
})(jQuery);


function get_Highest_Property_Prise()
{


$.get('Data.xml', function (XML_property) {

    $(XML_property).find('property').each(function () {

        var c_Price = parseInt($(this).find('priceask').text().replace(',', ''));

        if (c_Price > pulgin_Global_Variables.hight_price) {

            pulgin_Global_Variables.hight_price = c_Price;
        }
    }); //end of function 

});
}

1 个答案:

答案 0 :(得分:1)

var pulgin_Global_Variables = {
    hight_price: ""
};  

  $.fn.SearchProperty = function (options) {

    var defaults = {
        S_MinPrice: 0,
        S_MaxPrice: pulgin_Global_Variables.hight_price
    };

     alert("yo yo "+defaults.S_MaxPrice);
}
})(jQuery); 



//here set max price to match your global object
 $.get('Data.xml', function (XML_property) {
        $(XML_property).find('property').each(function () {

            var c_Price = parseInt($(this).find('priceask').text().replace(',', ''));

            if (c_Price > pulgin_Global_Variables.hight_price) {

                pulgin_Global_Variables.hight_price = c_Price;

            }
        }); //end of function 

    }).done(function () {
       $(whatever).SearchProperty()

})