Jquery

Build a custom set of Tools.

Or download the source code

Here you can download individual tools or create a custom
combination of tools by selecting only those you want. Both
the source code and the minified
versions are available.

Include jQuery

jQuery

All tools depend on this library (except flashembed). Can alternatively be included from googleapis (see below)

UI Tools

Tabs

6761.0

The most important UI tool

Slideshow plugin

3678.0

Transforms tabs into a working slideshow

Tooltip

7832.0

The basics of UI design

Slide effect

1687.0

A sliding tooltip effect with customized sliding directions, dimensions and speeds

Dynamic plugin

3914.0

Dynamic positioning of the tooltip so that it always stays in the viewport

Overlay

6455.0

A generic HTML overlaying widget

Apple effect

3281.0

An overlay effect that you might have seen on apple.com

Form Tools

Dateinput

17850.0

HTML5 date input for humans

Rangeinput

10653.0

HTML5 range input for humans

Validator

14803.0

HTML5 input validation for humans

Flashembed

6773.0

The future of Flash embedding. Works as a standalone tool and jQuery is not required.

History

2193.0

Back button for AJAX apps

Expose

4497.0

Makes your HTML stand out from its surroundings

Mousewheel

1601.0

Where to Get It

The final jQuery 2.0.0 files can be found here on the jQuery CDN:

  • http://code.jquery.com/jquery-2.0.0.min.js (minified, for production)
  • http://code.jquery.com/jquery-2.0.0.js (unminified, for testing)

The files should also be available on the Google and Microsoft CDNs soon, but please give these folks a few days before releasing a storm of impatient tweets. Also remember that production web sites should be requesting a specific version from any CDN; using a non-specific version like or is considered harmful to your web site’s health and performance.

If you’re upgrading from a version before 1.9, we recommend that you use the and read the jQuery 1.9 Upgrade Guide, since there have been a lot of changes. It’s easy to use the plugin, just include it in your HTML file after jQuery and open your browser console to see the messages it generates:

<script src="http://code.jquery.com/jquery-2.0.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script>

Обращение к элементам в jQuery

Для того чтобы писать код на jQuery, вам понадобится использовать знак $, который является псевдонимом (или сокращением) для идентификатора на jQuery. Например, чтобы выбрать все и добавить css-свойство с помощью jQuery, а также поменять класс при клике на этом блоке, необходимо написать такой код:

Простой скрипт на jQuery

<style>
.jq-test { padding: 10px; background: #90c4f8; }
</style>

<div class=»jq-test»>
<h5>Test Block 1</h5>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Distinctio necessitatibus commodi
dolorem natus qui ut suscipit, inventore expedita explicabo, ipsa.</p>
</div>
<div class=»jq-test»>
<h5>Test Block 2</h5>
<p>Facilis veniam praesentium modi possimus repudiandae eaque error eum provident similique
debitis eligendi, laudantium incidunt earum sed ea dicta reprehenderit.</p>
</div>
<div class=»jq-test»>
<h5>Test Block 3</h5>
<p>Ratione possimus ullam dolor fugiat facilis! Eum iusto architecto laudantium ex molestiae commodi,
sed earum nesciunt ut saepe deleniti ea.</p>
</div>
<div class=»jq-test»>
<h5>Test Block 4</h5>
<p>Quibusdam, tempore sapiente distinctio laboriosam explicabo totam deleniti, aliquam consectetur,
ullam dolore non laudantium doloribus. Aperiam alias accusantium iusto quas.</p>
</div>

<script>
$(document).ready(function(){
$(‘.jq-test’).css(‘border-bottom’, ‘5px double #cde’);
$(‘.jq-test’).click(function(){
$(this).toggleClass(«jq-test»);
});
});
</script>

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

<style>

.jq-test {padding10px;background#90c4f8;}

</style>
 

<div class=»jq-test»>

<h5>Test Block1<h5>

<p>Lorem ipsum dolor sit amet,consectetur adipisicing elit.Distinctio necessitatibus commodi

dolorem natus qui ut suscipit,inventore expedita explicabo,ipsa.<p>

<div>

<div class=»jq-test»>

<h5>Test Block2<h5>

<p>Facilis veniam praesentium modi possimus repudiandae eaque error eum provident similique

debitis eligendi,laudantium incidunt earum sed ea dicta reprehenderit.<p>

<div>

<div class=»jq-test»>

<h5>Test Block3<h5>

<p>Ratione possimus ullam dolor fugiat facilis!Eum iusto architecto laudantium ex molestiae commodi,

sed earum nesciunt ut saepe deleniti ea.<p>

<div>

<div class=»jq-test»>

<h5>Test Block4<h5>

<p>Quibusdam,tempore sapiente distinctio laboriosam explicabo totam deleniti,aliquam consectetur,

ullam dolore non laudantium doloribus.Aperiam alias accusantium iusto quas.<p>

<div>

 
<script>

$(document).ready(function(){

$(‘.jq-test’).css(‘border-bottom’,’5px double #cde’);

$(‘.jq-test’).click(function(){

$(this).toggleClass(«jq-test»);

});

});

</script>

Код несложный, он добавляет рамку внизу блока. Клик на голубом блоке удаляет/добавляет класс «jq-test» к нему с помощью метода jQuery .

Test Block 1

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Distinctio necessitatibus commodi dolorem natus qui ut suscipit, inventore expedita explicabo, ipsa.

Test Block 2

Facilis veniam praesentium modi possimus repudiandae eaque error eum provident similique debitis eligendi, laudantium incidunt earum sed ea dicta reprehenderit.

Test Block 3

Ratione possimus ullam dolor fugiat facilis! Eum iusto architecto laudantium ex molestiae commodi, sed earum nesciunt ut saepe deleniti ea.

Test Block 4

Quibusdam, tempore sapiente distinctio laboriosam explicabo totam deleniti, aliquam consectetur, ullam dolore non laudantium doloribus. Aperiam alias accusantium iusto quas.

Просмотров:
890

jQuery UI 1.8

uncompressedminified

Themes

baseblack-tieblitzercupertinodark-hivedot-luveggplantexcite-bikeflickhot-sneakshumanityle-frogmint-chocovercastpepper-grinderredmondsmoothnesssouth-streetstartsunnyswanky-pursetrontasticui-darknessui-lightnessvader

Previous Releases

  • jQuery UI 1.8.23 — uncompressed, minified, theme
  • jQuery UI 1.8.22 — uncompressed, minified, theme
  • jQuery UI 1.8.21 — uncompressed, minified, theme
  • jQuery UI 1.8.20 — uncompressed, minified, theme
  • jQuery UI 1.8.19 — uncompressed, minified, theme
  • jQuery UI 1.8.18 — uncompressed, minified, theme
  • jQuery UI 1.8.17 — uncompressed, minified, theme
  • jQuery UI 1.8.16 — uncompressed, minified, theme
  • jQuery UI 1.8.15 — uncompressed, minified, theme
  • jQuery UI 1.8.14 — uncompressed, minified, theme
  • jQuery UI 1.8.13 — uncompressed, minified, theme
  • jQuery UI 1.8.12 — uncompressed, minified, theme
  • jQuery UI 1.8.11 — uncompressed, minified, theme
  • jQuery UI 1.8.10 — uncompressed, minified, theme
  • jQuery UI 1.8.9 — uncompressed, minified, theme
  • jQuery UI 1.8.8 — uncompressed, minified, theme
  • jQuery UI 1.8.7 — uncompressed, minified, theme
  • jQuery UI 1.8.6 — uncompressed, minified, theme
  • jQuery UI 1.8.5 — uncompressed, minified, theme
  • jQuery UI 1.8.4 — uncompressed, minified, theme
  • jQuery UI 1.8.3 — uncompressed, minified, theme
  • jQuery UI 1.8.2 — uncompressed, minified, theme
  • jQuery UI 1.8.1 — uncompressed, minified, theme
  • jQuery UI 1.8.0 — uncompressed, minified, theme

Deprecating positional selectors and the sunset of Sizzle

The basic API of jQuery is to select something and then do something with what was selected. Sizzle, the selector engine in jQuery, handles the first half. It’s been a fast and efficient little engine that has paved the way for native selector APIs like and additional native JavaScript and CSS selectors. Now that many of these selectors have made their way into modern browsers, it’s almost time to say goodbye to Sizzle. But in order to remove Sizzle in jQuery 4.0, we will also need to remove what we refer to as positional selectors, which are non-standard selectors.

Specifically, jQuery 3.4.0 is deprecating , , , , , , , and . When we remove Sizzle, we’ll replace it with a small wrapper around , and it would be almost impossible to reimplement these selectors without a larger selector engine.

We think this trade-off is worth it. Keep in mind we will still support the positional methods, such as , , and . Anything you can do with positional selectors, you can do with positional methods instead. They perform better anyway.

How to build your own jQuery

First, clone the jQuery git repo.

Then, enter the jquery directory and run the build script:

cd jquery && npm run build

The built version of jQuery will be put in the subdirectory, along with the minified copy and associated map file.

If you want to create custom build or help with jQuery development, it would be better to install grunt command line interface as a global package:

Make sure you have installed by testing:

Now by running the command, in the jquery directory, you can build a full version of jQuery, just like with an command:

There are many other tasks available for jQuery Core:

Modules

Special builds can be created that exclude subsets of jQuery functionality.
This allows for smaller custom builds when the builder is certain that those parts of jQuery are not being used.
For example, an app that only used JSONP for and did not need to calculate offsets or positions of elements could exclude the offset and ajax/xhr modules.

Any module may be excluded except for , and . To exclude a module, pass its path relative to the folder (without the extension).

Some example modules that can be excluded are:

  • ajax: All AJAX functionality: , , , , , transports, and ajax event shorthands such as .
  • ajax/xhr: The XMLHTTPRequest AJAX transport only.
  • ajax/script: The AJAX transport only; used to retrieve scripts.
  • ajax/jsonp: The JSONP AJAX transport only; depends on the ajax/script transport.
  • css: The method. Also removes all modules depending on css (including effects, dimensions, and offset).
  • css/showHide: Non-animated , and ; can be excluded if you use classes or explicit calls to set the property. Also removes the effects module.
  • deprecated: Methods documented as deprecated but not yet removed.
  • dimensions: The and methods, including and variations.
  • effects: The method and its shorthands such as or .
  • event: The and methods and all event functionality.
  • event/trigger: The and methods.
  • offset: The , , , , and methods.
  • wrap: The , , , and methods.
  • core/ready: Exclude the ready module if you place your scripts at the end of the body. Any ready callbacks bound with will simply be called immediately. However, will not be a function and or similar will not be triggered.
  • deferred: Exclude jQuery.Deferred. This also removes jQuery.Callbacks. Note that modules that depend on jQuery.Deferred(AJAX, effects, core/ready) will not be removed and will still expect jQuery.Deferred to be there. Include your own jQuery.Deferred implementation or exclude those modules as well ().
  • exports/global: Exclude the attachment of global jQuery variables ($ and jQuery) to the window.
  • exports/amd: Exclude the AMD definition.

The build process shows a message for each dependent module it excludes or includes.

AMD name

As an option, you can set the module name for jQuery’s AMD definition. By default, it is set to «jquery», which plays nicely with plugins and third-party libraries, but there may be cases where you’d like to change this. Simply set the option:

grunt custom --amd="custom-name"

Or, to define anonymously, set the name to an empty string.

grunt custom --amd=""

Custom Build Examples

To create a custom build, first check out the version:

git pull; git checkout VERSION

Where VERSION is the version you want to customize. Then, make sure all Node dependencies are installed:

npm install

Create the custom build using the option, listing the modules to be excluded.

Exclude all ajax functionality:

grunt custom:-ajax

Excluding css removes modules depending on CSS: effects, offset, dimensions.

grunt custom:-css

Exclude a bunch of modules:

grunt custom:-ajax/jsonp,-css,-deprecated,-dimensions,-effects,-offset,-wrap

There is also a special alias to generate a build with the same configuration as the official jQuery Slim build is generated:

grunt custom:slim

jQuery Tools from CDN

Here is a list of all available jQuery Tools combinations from
a free Content Delivery Network.

<!-- UI Tools: Tabs, Tooltip, Scrollable and Overlay (4.45 Kb) --><script src="http://cdn.jquerytools.org/1.2.6/tiny/jquery.tools.min.js"></script> <!-- Form tools: Dateinput, Rangeinput and Validator. No jQuery library. ( Kb) --><script src="http://cdn.jquerytools.org/1.2.6/form/jquery.tools.min.js"></script> <!-- ALL jQuery Tools. No jQuery library --><script src="http://cdn.jquerytools.org/1.2.6/all/jquery.tools.min.js"></script> <!-- jQuery Library + UI Tools --><script src="http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js"></script> <!-- jQuery Library + ALL jQuery Tools --><script src="http://cdn.jquerytools.org/1.2.6/full/jquery.tools.min.js"></script>

HTML

If you prefer to load the jQuery library separately the recommended
practice is to load jQuery from Google’s CDN service. Make sure the
jQuery library is always loaded before the jQuery Tools
library.

<script src="http://ajax.googleapis.com/ajax/libs/jquery//jquery.min.js"></script>

HTML

About Browser Support

jQuery is constantly tested with all of its supported browsers via unit tests. However, a web page using jQuery may not work in the same set of browsers if its own code takes advantage of (or falls prey to) browser-specific behaviors. Testing is essential to fully support a browser. The Microsoft Edge Developer site makes available virtual machines for testing many different versions of Internet Explorer. Older versions of other browsers can be found at oldversion.com.

Only the most current version of jQuery is tested and updated to fix bugs or add features. Users of older versions that find a bug should upgrade to the latest released version to determine if the bug has already been fixed. The may be helpful in identifying and fixing problems during a version upgrade.

Как подключить скрипт jQuery в html

Подключение jQuery к странице осуществляется также как и любого другого JavaScript файла. Т.е. посредством добавления в HTML тега с атрибутом , в котором необходимо задать полный или относительный путь к файлу.

Подключение последней версии jQuery:

<script src="/assets/js/jquery-3.5.1.min.js"></script>

При этом разместить можно как секции в , так и в . Но где же лучше?

Раньше (до появления режимов и ) это рекомендовалось делать перед закрывающим тегом :

  ...
  <script src="/assets/js/jquery-3.5.1.min.js"></script>
</body>
</html>

При таком размещении скрипт не будет блокировать парсинг веб-страницы, т.к. его загрузка и выполнение будет осуществляться в самом конце. В результате, это приведёт к тому, что пользователь увидит содержимое страницы быстрее и сможет раньше с ней начать взаимодействовать.

Если бы мы сделали это по-другому, например, поместили в раздел , то создали бы «задержку» при обработке страницы в самом её начале. А это привело бы к тому, что пользователю пришлось бы дольше ждать отображения контента страницы.

Но сейчас так делать не рекомендуется. Лучше размещать скрипты как можно выше (в разделе ) с добавлением к ним атрибута или . Эти атрибуты будут «говорить» браузеру, что скрипт нужно загрузить в фоне, не останавливая при этом основной поток обработки страницы. Это позволит сделать сайт более производительным.

  ...
  <!-- отложенная загрузка библиотеки jQuery -->
  <script defer src="/assets/js/jquery-3.5.1.min.js"></script>
  ...
</head>
...

Использовать атрибут применительно к jQuery не имеет смысла, т.к. эту библиотеку мы в основном используем для изменения DOM. Но перед тем, как править DOM, он должен быть построен. Это сделать нам поможет использование атрибута . Атрибут гарантирует что скрипт выполниться только после того, как дерево DOM будет построено, но до события .

При этом, если на странице имеется несколько внешних скриптов с атрибутом , то они будут выполняться строго в том порядке, в котором они расположены в коде.

Пример отложенного подключения jQuery и своего внешнего скрипта, зависящего от этой библиотеки:

<!-- сначала выполнится jQuery -->
<script defer src="/assets/js/jquery-3.5.1.min.js"></script>
<!-- после jQuery свой скрипт, зависящий от jQuery -->
<script defer src="/assets/js/main.min.js"></script>

При непосредственном размещении JavaScript кода в HTML документе его необходимо поместить в обработчик события DOMContentLoaded (в этом случае его код выполнится после загрузки библиотеки jQuery):

<script>
  document.addEventListener('DOMContentLoaded', function() {
    // код, зависящий от jQuery
    ...
  });
</script>
<!-- отложенная загрузка jQuery -->
<script defer src="/assets/js/jquery-3.5.1.min.js"></script>

Quick start

Insert the following line on your HTML page and you are done!

<script src="http://cdn.jquerytools.org/1.2.6/full/jquery.tools.min.js"></script>

HTML

This is the official jQuery Tools UI library and
after the inclusion you will have the following tools available:

  1. jQuery

The tools will be loaded
with maximum
performance no matter where your user is located on the
globe. Without the jQuery library, the file size is
only 4.45 Kb when gzipping is enabled on
the server-side. If you already have jQuery included on your page,
you can simply remove it and use only the above script
src
statement.

Please note that this global content delivery network
is completely free. You can use it freely in any
website including production environments. This network has been
kindly offered for all jQuery Tools users
by Max
CDN. Respect to them!

Security Fix

The main change in this release is a security fix, and it’s possible you will need to change your own code to adapt. Here’s why: jQuery used a regex in its method to ensure that all closing tags were XHTML-compliant when passed to methods. For example, this prefilter ensured that a call like is actually converted to . Recently, an issue was reported that demonstrated the regex could introduce a cross-site scripting (XSS) vulnerability.

The HTML parser in jQuery <=3.4.1 usually did the right thing, but there were edge cases where parsing would have unintended consequences. The jQuery team agreed it was necessary to fix this in a minor release, even though some code relies on the previous behavior and may break. The function does not use a regex in 3.5.0 and passes the string through unchanged.

If you absolutely need the old behavior, using the latest version of the jQuery migrate plugin provides a function to restore the old . After including the plugin you can call and jQuery will again ensure XHTML-compliant closing tags.

However, to sanitize user input properly, we also recommend using dompurify with the option to sanitize HTML from a user. If you don’t need the old behavior, but would still like to sanitize HTML from a user, dompurify should be used without the option, starting in jQuery 3.5.0. For more details, please see the 3.5 Upgrade Guide.

Отладка JavaScript-кода

В примере ниже показан очень простой JavaScript-сценарий, добавленный в новый тег <script> на предыдущей странице:

В этом коде мы не использовали возможностей библиотеки jQuery, а написали скрипты на чистом JavaScript (сравните объем этого кода с примером чуть ниже, где реализуется тот же функционал, но используется библиотека jQuery).

Обратите внимание, что этот простой сценарий содержит вывод вспомогательного сообщения на консоль (console.log). Консоль — это простое (но весьма полезное) средство, предоставляемое браузером и предназначенное для отображения отладочной информации, генерируемой сценарием в процессе выполнения

Вызов консоли осуществляется в разных браузерах по-разному. В Google Chrome для этого следует нажать комбинацию клавиш Ctrl + Shift + I и выбрать вкладку Console:

Как нетрудно заметить, результат, генерируемый вызовом метода console.log(), отображается в окне консоли вместе с дополнительной информацией о местонахождении источника сообщения (в данном случае это строки 34 и 42 файла test.html).

Test Suite Convenience Methods Reference (See test/data/testinit.js)

q( ... );

Example:

q("main", "foo", "bar");

=>  div#main, span#foo, input#bar 
t( testName, selector,  "array", "of", "ids"  );

Example:

t("Check for something", "//", "foo", "bar");
fireNative( node, eventType )

Example:

fireNative( jQuery("#elem"), "click" );

Add random number to url to stop caching

url( "some/url" );

Example:

url("index.html");

=> "data/index.html?10538358428943"


url("mock.php?foo=bar");

=> "data/mock.php?foo=bar&10538358345554"

Run tests in an iframe

Some tests may require a document other than the standard test fixture, and
these can be run in a separate iframe. The actual test code and assertions
remain in jQuery’s main test files; only the minimal test fixture markup
and setup code should be placed in the iframe file.

testIframe( testName, fileName,
  function testCallback(
      assert, jQuery, window, document,
	   additional args  ) {
	...
  } );

This loads a page, constructing a url with fileName .
The iframed page determines when the callback occurs in the test by
including the «/test/data/iframeTest.js» script and calling
when appropriate. Often this
will be after either document ready or fires.

The receives the QUnit object created by
for this test, followed by the global , , and from
the iframe. If the iframe code passes any arguments to ,
they follow the argument.

jQuery Core — All 1.x Versions

  • jQuery Core 1.12.4 — uncompressed, minified
  • jQuery Core 1.12.3 — uncompressed, minified
  • jQuery Core 1.12.2 — uncompressed, minified
  • jQuery Core 1.12.1 — uncompressed, minified
  • jQuery Core 1.12.0 — uncompressed, minified
  • jQuery Core 1.11.3 — uncompressed, minified
  • jQuery Core 1.11.2 — uncompressed, minified
  • jQuery Core 1.11.1 — uncompressed, minified
  • jQuery Core 1.11.0 — uncompressed, minified
  • jQuery Core 1.10.2 — uncompressed, minified
  • jQuery Core 1.10.1 — uncompressed, minified
  • jQuery Core 1.10.0 — uncompressed, minified
  • jQuery Core 1.9.1 — uncompressed, minified
  • jQuery Core 1.9.0 — uncompressed, minified
  • jQuery Core 1.8.3 — uncompressed, minified
  • jQuery Core 1.8.2 — uncompressed, minified
  • jQuery Core 1.8.1 — uncompressed, minified
  • jQuery Core 1.8.0 — uncompressed, minified
  • jQuery Core 1.7.2 — uncompressed, minified
  • jQuery Core 1.7.1 — uncompressed, minified
  • jQuery Core 1.7.0 — uncompressed, minified
  • jQuery Core 1.7.0 — uncompressed, minified
  • jQuery Core 1.6.4 — uncompressed, minified
  • jQuery Core 1.6.3 — uncompressed, minified
  • jQuery Core 1.6.2 — uncompressed, minified
  • jQuery Core 1.6.1 — uncompressed, minified
  • jQuery Core 1.6.0 — uncompressed, minified
  • jQuery Core 1.5.2 — uncompressed, minified
  • jQuery Core 1.5.1 — uncompressed, minified
  • jQuery Core 1.5.0 — uncompressed, minified
  • jQuery Core 1.4.4 — uncompressed, minified
  • jQuery Core 1.4.3 — uncompressed, minified
  • jQuery Core 1.4.2 — uncompressed, minified
  • jQuery Core 1.4.1 — uncompressed, minified
  • jQuery Core 1.4.0 — uncompressed, minified
  • jQuery Core 1.3.2 — uncompressed, minified, packed
  • jQuery Core 1.3.1 — uncompressed, minified, packed
  • jQuery Core 1.3.0 — uncompressed, minified, packed
  • jQuery Core 1.2.6 — uncompressed, minified, packed
  • jQuery Core 1.2.5 — uncompressed, minified, packed
  • jQuery Core 1.2.4 — uncompressed, minified, packed
  • jQuery Core 1.2.3 — uncompressed, minified, packed
  • jQuery Core 1.2.2 — uncompressed, minified, packed
  • jQuery Core 1.2.1 — uncompressed, minified, packed
  • jQuery Core 1.2.0 — uncompressed, minified, packed
  • jQuery Core 1.1.4 — uncompressed, packed
  • jQuery Core 1.1.3 — uncompressed, packed
  • jQuery Core 1.1.2 — uncompressed, packed
  • jQuery Core 1.1.1 — uncompressed, packed
  • jQuery Core 1.1.0 — uncompressed, packed
  • jQuery Core 1.0.4 — uncompressed, packed
  • jQuery Core 1.0.3 — uncompressed, packed
  • jQuery Core 1.0.2 — uncompressed, packed
  • jQuery Core 1.0.1 — uncompressed, packed
  • jQuery Core 1.0.0 — uncompressed, packed

Начинаем писать код на jQuery

В вашем скрипте вы можете для начала записать код, который что-либо выводит или в консоль, или с помощью диалогового окна alert(), чтобы проверить работоспособность кода:

Проверяем скрипт на jQuery

JavaScript

$(document).ready(function(){
console.log(‘jQuery works’);
// или
alert(‘jQuery works’);
});

1
2
3
4
5

$(document).ready(function(){

console.log(‘jQuery works’);

// или

alert(‘jQuery works’);

});

Можно использовать сокращенную форму записи:

Сокращенная запись функции $(document).ready()

JavaScript

$(function() {
console.log( «jQuery works!» );
});

1
2
3

$(function(){

console.log(«jQuery works!»);

});

Вызов функции обязателен в том случае, если вы подключили скрипты в блоке ДО того, как браузер сможет прочитать и распарсить всю структуру элементов в теле документа (тег ). Если вы подключаете скрипты перед закрывающим тегом , вызывать ее необязательно, хотя некоторые плагины могут требовать обязательного ее наличия.

Достаточно 1  раз написать вызов и весь код писать внутри этой функции вне зависимости от того, 5 строк в этом коде или 225.

Вызов   аналогичен обработке события , при наступлении которого браузер уже знает обо всех элементах в структуре DOM, но еще не загрузил картинки или видео. То есть вы уже можете обращаться к элементам и манипулировать ими, что чаще всего и является целью использования JavaScript и jQuery.

Current Active Support

Desktop

  • Chrome: (Current — 1) and Current
  • Edge: (Current — 1) and Current
  • Firefox: (Current — 1) and Current, ESR
  • Internet Explorer: 9+
  • Safari: (Current — 1) and Current
  • Opera: Current

Mobile

  • Stock browser on Android 4.0+
  • Safari on iOS 7+

Workarounds for Android Browser 4.0-4.3 are present in the code base, but we no longer actively test these versions.

Any problem with jQuery in the above browsers should be reported as a bug in jQuery.

(Current — 1) and Current denotes that we support the current stable version of the browser and the version that preceded it. For example, if the current version of a browser is 24.x, we support the 24.x and 23.x versions.

Firefox ESR (Extended Support Release) is a Firefox version for use by organizations including schools, universities, businesses and others who need extended support for mass deployments. It is based on a regular release of Firefox and synced from the next regular Firefox every few releases — example ESR versions include Firefox 47, 52 & 60. At any given time there are at most two ESR versions available; jQuery supports both of them. See the Mozilla site for more information.

If you need to support older browsers like Internet Explorer 6-8, Opera 12.1x or Safari 5.1+, use .

Основные изменения jQuery 2.0

Устранение поддержки IE 6/7/8 – это также может касаться и IE 9/10, если в них активирована функция «Представление совместимости».

Уменьшение размера библиотеки – размер библиотеки сократился на 12%.

Появилась возможность настройки библиотеки под себя – теперь у нас появилась возможность выбирать, какие из 12 модулей библиотеки нам нужны (ajax, ajax/xhr, ajax/script, ajax/jsonp, css, deprecated, dimensions, effects, event-alias, offset, wrap, sizzle), чтобы ещё больше уменьшить размер файла.

Схожесть с API версии 1.9 – jQuery 2.0 API совместим с версией 1.9. Это означает, что все изменения версии 1.9 плавно перешли и в новую версию. Если вы ещё не перешли на jQuery 1.9, то воспользуйтесь .

Где скачать библиотеку

Новую версию библиотеки можно скачать с официального jQuery CDN:

http://code.jquery.com/jquery-2.0.0.min.js (сжатая версия)

http://code.jquery.com/jquery-2.0.0.js (для тестирования)

Вскоре данные файлы будут доступны на CDN от Google и Microsoft. Для гарантии функционала, базирующегося на jQuery, указывайте конкретную версию библиотеки, которую хотите использовать.

Если вы будете обновляться с версии 1.9, то разработчики рекомендуют также подключить специальный . Его использовать очень легко. Прикрепляем файл в документе и открываем браузерную консоль для того, чтобы увидеть сообщения.

<script src="http://code.jquery.com/jquery-2.0.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script>

С помощью файла functions.php

И ещё один альтернативный способ подключения jQuery предложен Kama, который считает, что его вариант наиболее правильный. Суть заключается в том, что в WordPress уже есть программный метод добавления скриптов на страницу при помощи функций, например:

wp_register_script()
wp_enqueue_script()
wp_deregister_script()

Такой метод предотвращает конфликты, когда один и тот же скрипт подключается разными плагинами. Это облегчает работу при оптимизации загрузки js файлов, что уменьшает время загрузки страниц сайта. В этом случае, скрипты можно объединить в один файл. А браузер получит их в сжатом виде.

Для правильного подключения jQuery надо воспользоваться функцией wp_enqueue_script(). Скрипт в данном случае подключается один раз. Файл functions.php необходимо дополнить такими строками:

add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
function my_scripts_method(){
	wp_enqueue_script( 'jquery' );
}

Теперь, если посмотреть исходный код страницы, то в head появится следующая запись:

<script src='https://your-super-site.ru/wp-includes/js/jquery/jquery.js?ver=3.5.1'></script>

Можно ли подключить jQuery по этому способу с CDN Google? Отличная новость — да! Вот этот код от Kama совершит чудо:

add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
function my_scripts_method() {
	// отменяем зарегистрированный jQuery
	// чтобы отменить jquery-migrate, вместо "jquery-core" вписать "jquery"
	wp_deregister_script( 'jquery-core' );
	wp_register_script( 'jquery-core', '//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js');
	wp_enqueue_script( 'jquery' );
}

Его снова вписываем в файл functions.php. Результат работы кода:

<script src='//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js'></script>
<script src='http://example.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1'></script>

Когда jquery-migrate.js не требуется, но нужен только jQuery, то следует дополнить functions.php таким кодом:

add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
function my_scripts_method() {
	// отменяем зарегистрированный jQuery
	wp_deregister_script('jquery-core');
	wp_deregister_script('jquery');

	// регистрируем
	wp_register_script( 'jquery-core', 'https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js', false, null, true );
	wp_register_script( 'jquery', false, array('jquery-core'), null, true );

	// подключаем
	wp_enqueue_script( 'jquery' );
}    

В этом случае увидим лишь такую строку в head:

<script src='https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js'></script>

В строке 9 «true» означает что скрипт подключится, по возможности, в футер сайта.

И ещё один вариант подключения той версии jQuery, которую использует WordPress. Вот код:

add_action( 'wp_enqueue_scripts', 'my_scripts_method', 99 );
function my_scripts_method() {
	// получаем версию jQuery
	wp_enqueue_script( 'jquery' );
	// для версий WP меньше 3.6 'jquery' нужно поменять на 'jquery-core'
	$wp_jquery_ver = $GLOBALS->registered->ver;
	$jquery_ver = $wp_jquery_ver == '' ? '1.11.0' : $wp_jquery_ver;

	wp_deregister_script( 'jquery-core' );
	wp_register_script( 'jquery-core', '//ajax.googleapis.com/ajax/libs/jquery/'. $jquery_ver .'/jquery.min.js' );
	wp_enqueue_script( 'jquery' );
}

Первый сценарий jQuery

Добавив библиотеку jQuery в документ, можно приступать к созданию сценариев, использующих функциональность jQuery. Давайте модифицируем предыдущий пример, используя функциональность jQuery:

Этот сценарий совсем небольшой, однако позволяет познакомиться с некоторыми из наиболее важных возможностей и особенностей jQuery. Сценарий изменяет прозрачность изображений нарцисса, пиона и подснежника (нечетных элементов <img> в разметке) при наведении на них указателя мыши. Следствием этого является незначительное увеличение яркости изображения и его потускнение. При выходе указателя за пределы изображения восстанавливается прежнее значение непрозрачности. На изображения астры, розы и примулы манипуляции мышью никак не влияют.

Согласитесь, данный сценарий гораздо меньше и проще в понимании, нежели предыдущий пример с использованием стандартных функций JavaScript. Плюс этот сценарий является кроссбраузерным, т.е. его можно запустить, например, в старых браузерах (IE

jQuery и AJAX

jQuery('div#intro').load('/some/fragment.html');
jQuery.get('/some/script.php', {'name': 'Simon'}, function(data) {
    alert('Сервер ответил: ' + data);
}); // GET-запрос к /some/script.php?name=Simon

jQuery.post('/some/script.php', {'name': 'Simon'}, function(data) {
    alert('Сервер ответил: ' + data);
}); // POST-запрос к /some/script.php

jQuery.getJSON('/some.json', function(json) {
    alert('JSON выдал: ' + json.foo + ' ' + json.bar);
}); // Возвращает и преобразует ответ от /some.json как JSON

jQuery.getScript('/script.js'); // GET-запрос к /script.js и eval()

jQuery Core — All 2.x Versions

  • jQuery Core 2.2.4 — uncompressed, minified
  • jQuery Core 2.2.3 — uncompressed, minified
  • jQuery Core 2.2.2 — uncompressed, minified
  • jQuery Core 2.2.1 — uncompressed, minified
  • jQuery Core 2.2.0 — uncompressed, minified
  • jQuery Core 2.1.4 — uncompressed, minified
  • jQuery Core 2.1.3 — uncompressed, minified
  • jQuery Core 2.1.2 — uncompressed, minified
  • jQuery Core 2.1.1 — uncompressed, minified
  • jQuery Core 2.1.0 — uncompressed, minified
  • jQuery Core 2.0.3 — uncompressed, minified
  • jQuery Core 2.0.2 — uncompressed, minified
  • jQuery Core 2.0.1 — uncompressed, minified
  • jQuery Core 2.0.0 — uncompressed, minified
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector