Tag Archives: javascript
Greasemonkey-скрипт для Redmine
Redmine, конечно, настраиваемый и гибкий, но иногда очень не удобный. Захотелось сделать кнопочку «Взять в работу», которая появлялась бы на странице тикета. Делать плагин долго, просто подключить яваскрипт в шаблон — плохо, проблемы при обновлении Redmine. В итоге решил написать Greasemonkey-скрипт:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
// ==UserScript== // @name Redmine Ticket // @namespace hc // @include [урл к Redmine]/issues/* // ==/UserScript== var tt = document.createElement('DIV'); tt.innerHTML = "<script>\ var linkInWork = '<a href=\"javascript:void(0);\" onclick=\"setInWork(); return false;\" class=\"icon\">In work</a>';\ $A( $$( '#content .contextual a.icon-del' ) ).each( function( Elem ) {\ Elem.insert( {'after': linkInWork} );\ });\ function setInWork()\ {\ var t = $('loggedas').innerHTML;\ var userId = /\\/users\\/([0-9]*)/.exec(t);\ if ( userId !== null ) {\ userId = userId[1];\ }\ var statusValue = 2;\ setSelectOptionSelected( 'issue_assigned_to_id', userId );\ setSelectOptionSelected( 'issue_status_id', statusValue );\ $('issue-form').submit();\ }\ function setSelectOptionSelected( SelId, Value )\ {\ var sel = $( SelId );\ $A( sel.options ).find( function( option, index ) {\ if( option.value == Value ) {\ sel.selectedIndex = index;\ }\ });\ }\ </script>"; document.getElementById('content').appendChild(tt); |
Добавляет ссылки «In work» в список ссылок вверху и внизу страницы.
Как написать плагин для jQuery
Перепечатка статьи, ссылка на оригинал в конце статьи. За последнее время было много просьб рассказать о том, как написать свой собственный плагин к jQuery. Идя навстречу пожеланиям трудящихся бескрайних полей Интернета – выполняю эти просьбы… Для того, чтобы лучше понять принципы, поставим себе какую-нибудь несложную задачу, имеющую хотя бы минимальную практическую пользу. Давайте вместе напишем …
Найти ближайшего по иерархии родителя с заданным классом в jQuery
1 |
$parentElem = $( '#myComment' ).parents( '.specialClass' ); |
Найти ближайший предыдущий элемент с заданным классом в jQuery
UPD: Речь про элементы- «братья» текущего. Чтобы выбрать ближайший предыдущий камент, имеющий класс specialClass:
1 |
$prevSpecial= $( '#myComment' ).prevAll( '.specialClass:first' ); |
SWFObject — для размещения flash-объектов на странице
Отличная библиотечка, про которую все конечно знают. Предназначена для размещения flash-объектов на странице при помощи javascript или улучшить javascript’ом отображение размещённого с помощью html-тегов flash-контента. страничка на Google-code документация на русском
Основы ООП на Javascript
Объект представляет собой экземпляр класса. Javascript — это объектно-ориентированный язык, но в нём нет классов, а вместо наследования на основе классов используется наследование на основе прототипов.
Вычисление посещённых ссылок пользователя с помощью Javascript и DOM Level 2
Для этого нам нужен метод объекта window — getComputedStyle. В ИЕ как всегда всё непросто — у него есть свойство currentStyle элемента.
Оптимизация и скорость выполнения в jQuery
ссылка на интересный доклад по jQuery
Создание WYSIWYG-редактора
http://xpoint.ru/know-how/WYSIWYG/TrueJavaScriptEditor — статья о том, как написать wysiwyg-редактор. Не всё правильно, но для начала очень даже ничего. http://www.mozilla.org/editor/midas-spec.html — список команд и правила их использования. Некоторые особенности реализации designMode-элементов в firefox. http://msdn.microsoft.com/en-us/library/ms536419(VS.85).aspx — execCommand в internetExplorer http://msdn.microsoft.com/en-us/library/ms537834(VS.85).aspx — некоторый туториал по написанию wysiwyg-редактора под internetExplorer от MicroSoft;) http://code.google.com/p/jwysiwyg/ — очень простой wysiwyg-редактор, использующий библиотеку jQuery.
Справочники по Javascript
http://javascript.ru/manual — справочник; сайт очень добротный, с подробным объяснением, где, что и зачем (http://javascript.ru/manual.zip) — оффлайн-версия https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide (англ.) — подробные справочники от Mozilla не очень подробные справочники, зато с алфавитным указателем: http://www.devguru.com/technologies/ecmascript/quickref/javascript_index.html (англ.) — по ecmascript http://devguru.com/technologies/javascript/index.asp (англ.) — по клиентскому javascript-у http://www.javascriptkit.com/jsref/ (англ.)