jQuery стандарты и передовая практика [закрыто]
в настоящее время я отвечаю за развертывание использования jQuery для сообщества веб-разработчиков в нашей компании. Часть этого включает в себя представление курса, однако другая часть включает в себя распространение стандартов и передовой практики.
Если Вы Google "jQuery best practice", вы, вероятно, найдете следующее среди поиска результаты. http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/ http://www.artzstudio.com/2009/04/jquery-performance-rules/
Они были полезны, и я блестел много полезной информации о них. Однако то, что меня действительно интересовало бы, было бы любыми советами, ловушками, мнениями и т. д., по лучшей практике от опытных разработчиков jQuery и тех, кто, возможно, оказался в аналогичном положении для меня. Любой товар ссылки также будут оценены.
EDIT:
добавлен раздел стандартов кодирования jQuery на моей собственной странице:
4 ответа:
вы можете найти эту трендовую тему прямо здесь StackOverflow.com
jQuery подводные камни, чтобы избежать
очень интересные полезные советы один за другим.
вот еще несколько я нашел в моем закладки:
- http://paulirish.com/2011/11-more-things-i-learned-from-the-jquery-source/
http://jquery.open2space.com/http://thetoptenme.wordpress.com/2008/08/19/the-complete-guide-for-jquery-developer-reblog/http://www.tvidesign.co.uk/blog/improve-your-jquery-25-excellent-tips.aspx
то, что я лично начал делать, это своего рода Приложения Венгерская Нотация для наборов jQuery, путем префикса этих переменных с
$
var someInt = 1; var $someQueryCollection = $( 'selector' );
Я считаю, что по мере роста моих фрагментов jQuery это становится неоценимым не только в продвижении хранения наборов jQuery в качестве переменных, но и в том, чтобы помочь мне отслеживать, какие переменные на самом деле наборы jQuery.
ненавязчивый JavaScript (разделение разметки и поведения)
в те дни было принято помещать обработчик кликов в разметку. Теперь рекомендуется не писать код JS внутри разметки, а включить его через события DOM.
постепенное повышение
пользователь получает лучший опыт, если они используют совместимый со стандартами браузер и/или имеет JavaScript включен. Сайт/веб-приложение по-прежнему доступно, даже если у них есть старый браузер или отключен JS.
обнаружение функций, а не обнаружение браузера
оставляя вышеизложенные моменты в стороне, я бы действительно сосредоточился на передаче сообщения (нарушая заранее задуманное понятие), что JavaScript-это игрушечный язык. Я видел слишком много разработчиков, которые думают таким образом, и все идет под гору оттуда. Вам нужно объяснить им, как JavaScript является очень мощным языком и почему им нужна библиотека JS (из-за несоответствий браузера), хотя сам JS очень мощный.
удачи.
то, как работает jQuery, не совпадает с тем, как работает JavaScript, хотя они являются одним и тем же. jQuery работает с селекторами CSS, такими как имена классов и идентификаторы элементов. Чтобы выбрать элемент в jQuery, вы:
$("#yourID") or $(".yourClass") or $("div") or $("#yourID p") etc
и вы сможете получить коллекцию всех элементов на странице, которые соответствуют вашим критериям. Затем вы можете выполнять свои действия на всех этих элементах без каких-либо циклов любого рода. Это важно помните:
$(".yourClass").click(function(){ //do stuff });
повлияет на все элементы с
.yourClass
прилагается к ним. Один совет: если вы собираетесь получить доступ к$(this)
, вы должны сохранить его как локальную переменную:$(".yourClass").click(function(){ var $this = $(this); });
как это ускорит вашу функцию.