Skip to content

Commit

Permalink
Version 2.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Ronef committed Feb 27, 2024
2 parents dbf5ab1 + a47d9bf commit 91ab1bb
Show file tree
Hide file tree
Showing 6 changed files with 97 additions and 7 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# jQuery.ddMap changelog


## Version 2.1 (2024-02-27)
* \+ Parameters → `params.markers[i].icon`: The new optional parameter. Allows you to customaize marker icons.


## Version 2.0 (2023-05-22)
* \* The library has been renamed from `ddYMap` to `ddMap`: `jQuery.fn.ddYMap``jQuery.fn.ddMap`.
* \+ You may not to think about including Yandex Map script, the library will do it automatically.
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG_ru.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# jQuery.ddMap changelog


## Версия 2.1 (2024-02-27)
* \+ Параметры → `params.markers[i].icon`: Новый опциональный параметр. Позволяет кастомизировать иконки маркеров.


## Версия 2.0 (2023-05-22)
* \* Библиотека переименована из `ddYMap` в `ddMap`: `jQuery.fn.ddYMap``jQuery.fn.ddMap`.
* \+ Можно не думать о подключении скрипта Яндекс Карт, библиотека сделает это автоматически.
Expand Down
27 changes: 26 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Features:
<script src="jQuery-3.5.0.min.js"></script>

<!-- jQuery.ddMap -->
<script src="jQuery.ddMap-2.0.0.min.js"></script>
<script src="jQuery.ddMap-2.1.0.min.js"></script>
```

You may not to think about including Yandex Map script, the library will do it automatically.
Expand Down Expand Up @@ -100,6 +100,31 @@ That's all!
* Valid values: `string`
* Default value: `''`

* `params.markers[i].icon`
* Desctription: Custom marker icon data.
* Valid values: `objectPlain`
* Default value: — (default icon)

* `params.markers[i].icon.src`
* Desctription: Address of an image.
* Valid values: `string`
* **Required**

* `params.markers[i].icon.size`
* Desctription: Icon size.
* Valid values: `objectPlain`
* **Required**

* `params.markers[i].icon.size.width`
* Desctription: Image width in px.
* Valid values: `integer`
* **Required**

* `params.markers[i].icon.size.height`
* Desctription: Image height in px.
* Valid values: `integer`
* **Required**

* `params.apiKey`
* Desctription: Yandex Maps API key.
_For now it is working without key, but Yandex mark it as required, so it is recommended to set it._
Expand Down
27 changes: 26 additions & 1 deletion README_ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<script src="jQuery-3.5.0.min.js"></script>

<!-- jQuery.ddMap -->
<script src="jQuery.ddMap-2.0.0.min.js"></script>
<script src="jQuery.ddMap-2.1.0.min.js"></script>
```

Можно не думать о подключении скрипта Яндекс Карт, библиотека сделает это автоматически.
Expand Down Expand Up @@ -99,6 +99,31 @@ $('.map').ddMap({
* Допустимые значения: `string`
* Значение по умолчанию: `''`

* `params.markers[i].icon`
* Описание: Кастомная иконка маркера.
* Допустимые значения: `objectPlain`
* Значение по умолчанию: — (дефолтная иконка)

* `params.markers[i].icon.src`
* Описание: Адрес изображения.
* Допустимые значения: `string`
* **Обязателен**

* `params.markers[i].icon.size`
* Описание: Размер изображения.
* Допустимые значения: `objectPlain`
* **Обязателен**

* `params.markers[i].icon.size.width`
* Описание: Ширина в px.
* Допустимые значения: `integer`
* **Обязателен**

* `params.markers[i].icon.size.height`
* Описание: Высота px.
* Допустимые значения: `integer`
* **Обязателен**

* `params.apiKey`
* Описание: API-ключ Яндекс Карт.
_Пока что работает и без ключа, но Яндекс декларирует его обязательным, так что рекомендуется использовать._
Expand Down
38 changes: 35 additions & 3 deletions jQuery.ddMap.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/**
* jQuery.ddMap
* @version 2.0 (2023-05-22)
* @version 2.1 (2024-02-27)
*
* @see {@link README.md}
*
* @link https://code.divandesign.ru/jquery/ddmap
*
* @copyright 2013–2023 [Ronef]{@link https://Ronef.ru }
* @copyright 2013–2024 [Ronef]{@link https://Ronef.ru }
*/

(function($){
Expand Down Expand Up @@ -233,6 +233,38 @@
Array.isArray(markerData.latLng) &&
markerData.latLng.length == 2
){
var
markerOptions = $.extend(
true,
{},
theInstance.markerOptions
)
;

//If marker has a custom icon
if (
typeof markerData.icon == 'object'
&& typeof markerData.icon.src == 'string'
&& markerData.icon.src.length > 0
&& typeof markerData.icon.size == 'object'
&& $.isNumeric(markerData.icon.size.width)
&& $.isNumeric(markerData.icon.size.height)
){
markerData.icon.size.width = parseInt(markerData.icon.size.width);
markerData.icon.size.height = parseInt(markerData.icon.size.height);

markerOptions.iconLayout = 'default#image';
markerOptions.iconImageHref = markerData.icon.src;
markerOptions.iconImageSize = [
markerData.icon.size.width,
markerData.icon.size.height
];
markerOptions.iconImageOffset = [
markerData.icon.size.width / -2,
markerData.icon.size.height * -1
];
}

//Создаём метку
geoObjects.add(
new ymaps.Placemark(
Expand All @@ -243,7 +275,7 @@
$.trim(markerData.content) :
''
},
theInstance.markerOptions
markerOptions
)
);
}
Expand Down
4 changes: 2 additions & 2 deletions jQuery.ddMap.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 91ab1bb

Please sign in to comment.