Я пытался конвертировать весь файл прототипа, содержащий около 480 строк в jQuery. Мы не используем библиотеку прототипов.
У меня есть что-то конвертировать в онлайн-конверт. Но похоже, что он будет работать только для немногих. Но он дал много советов.
Мое сомнение в том, как начать? Когда я просматриваю в stackoverflow, у меня так много... если мы полностью перейдем от прототипа к jquery, нам нужно использовать слово "прототип". ? Пример: qaru.site/questions/5935871/...
var buildAShop = Class.create();
buildAShop.prototype = {
initialize: function (parameters) {
var params = parameters.evalJSON(); // passing json object so we can add more variables from jsp if needed.
this.scheduleSearchAjax = null; // keep track of the latest scheduleSearch ajax call to ensure only the last one gets displayed.
this.intrastitialContent = null; // store the intrastial content from the page so all HTML is in the jsp page.
// create controller object for all shops and their info
this.shopObj = {currentShop: params.selectedShopNumber,
shopNumbers: params.shopNumbers,
shopNumbersForSelectedSlices: params.shopNumbersForSelectedSlices};
for (var i = 0; i < params.shopNumbers.length; i++) {
var thisShopDiv = $(params.shopNumbers[i].toString());
var thisShopHeader = thisShopDiv.getFirstElementByClassName('shopHeader');
// observe the shop header for changing shops and highlighting the 'tab'
Event.observe(thisShopHeader, 'click', this.switchShop.bindAsEventListener(this, params.shopNumbers[i]));
Event.observe(thisShopHeader, 'mouseover', this.hoverHeader.bindAsEventListener(this, thisShopHeader, 'on'));
Event.observe(thisShopHeader, 'mouseout', this.hoverHeader.bindAsEventListener(this, thisShopHeader, 'off'));
// initialize this shopSet
this.initShopSet(thisShopDiv, params.shopNumbers[i], params.shopNames[i]);
};
},
// initializes a shop set
initShopSet: function (thisShopDiv, shopId, shopName) {
this.shopObj[shopId] = {};
var flt = this.shopObj[shopId];
Здесь я не дал весь код.
Метод Class.create()
в PrototypeJS позволяет легко создавать объекты Javascript так же, как если бы вы строили на обычных языках ООП (Java, PHP и т.д.),
однако ядро jQuery не имеет прямой корреляции для Class.create()
поэтому вам нужно будет создать объект Javascript, используя собственные прототипы Javascript.