JS не работает без прототипа - PullRequest
2 голосов
/ 21 марта 2011

У нас есть этот кусок кода:

<a class="loadbutton" onClick="$('checkout_form').submit(); $(this).update('<img src=\'images/loader/longLoad.gif\' /> Processing'); return false;">Pay now<br /><span class="vsmall">click once</span></a> 

Что, похоже, не работает, если я достану библиотеку prototype.js

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/prototype/1.6/prototype.js">

Но когда я использую эту библиотеку, она конфликтует с каким-то другим кодом, который мы используем ... поэтому мы хотим сделать это без этой библиотеки прототипов, но все равно иметь такой же эффект на кнопку.

Как мне это сделать?

Ответы [ 2 ]

2 голосов
/ 21 марта 2011

Правильно ли я предполагаю, что вы используете jquery вместо прототипа? Если так, то вот как это может выглядеть:

<a class="loadbutton" onClick="$('#checkout_form').submit(); $(this).html('<img src=\'images/loader/longLoad.gif\' /> Processing'); return false;">Pay now<br /><span class="vsmall">click once</span></a>

Как упоминал Эрнест, jQuery.noConflict () может быть вашим лучшим вариантом, если вы хотите использовать обе библиотеки. Для этого вы должны применить $ .noConflict () перед включением прототипа.

1 голос
/ 21 марта 2011

Эта функция "$" предоставляется библиотекой прототипов, поэтому она не работает при удалении прототипа.Является ли jQuery другой библиотекой?jQuery предоставляет механизм, который не будет мешать другим библиотекам, которые хотят использовать «$».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...