Ответы пользователя по тегу JavaScript
  • Можно ли использовать Javascript и PHP вместе?

    Anumik
    @Anumik
    Можно, если осторожно :)
    А по делу - у меня есть один скрипт, в котором смешаны php, немного bitrix api, js и api яндекс карт, мне нравится как получилось и отрабатывает прекрасно, а вот у моего друга, более опытного разработчика был небольшой приступ
    Если сделать аккуратно и правильно - конечно можно)
    Ответ написан
    2 комментария
  • Как передать атрибут data в jquery chosen?

    Anumik
    @Anumik Автор вопроса
    2 варианта
    1 в строке ~64 заменил option.innerHTML на html: option.outerHTML, таким образов в конечный передается не только текст из , но и сам с учетом всех атрибутов

    2 Ищем метод SelectParser.prototype.add_option и внутри него первый вызов this.parsed.push({. Добавляем в объект, который "пушится" в массив, новый элемент. Назовем его, к примеру,
    link:
    link: option.getAttribute('data-link'),
    На данном участке кода option - это ссылка на DOM-элемент очередного из нашего исходного селекта.

    Получается примерно такой код:

    SelectParser.prototype.add_option = function(option, group_position, group_disabled) {
      if (option.nodeName.toUpperCase() === "OPTION") {
        if (option.text !== "") {
          if (group_position != null) {
            this.parsed[group_position].children += 1;
          }
          this.parsed.push({
            link: option.getAttribute('data-link'),
            array_index: this.parsed.length,
            options_index: this.options_index,
    //...


    Находим в файле строку (в моей версии это 264 строка)

    option_el.setAttribute("data-option-array-index", option.array_index);


    На этом участке кода создается конечный пункт списка . А наше значение из data-link у нас готово к использованию в переменной option.link.

    Рядом с найденной добавляем строку

    option_el.setAttribute("data-link", option.link);

    1 решение моё, 2 подсказал Иван Пшеницын на ru.stackoverflow.com
    Ответ написан
    Комментировать
  • Почему не отображаются данные из ИБ Битрикс при выводе в Яндекс.Карте?

    Anumik
    @Anumik Автор вопроса
    Нужно было добавить кластер

    <script type="text/javascript">
    ymaps.ready(init);
        var myMap;
        var clusterer;
        var clustererF;
    
        var balunIcon = {
                iconLayout: 'default#image',
                iconImageHref: '<?=SITE_TEMPLATE_PATH?>/img/map-target.png',
                iconImageSize: [26, 36],
                iconImageOffset: [-13, -18]};
    function init(){
       	
       	myMap = new ymaps.Map('map', {
                center: [48.479862298148, 135.07525863163],
                zoom: 9
            });
            clusterer = new ymaps.Clusterer({
                preset: 'islands#invertedRedClusterIcons',
            });
    
            <?foreach($arResult["ITEMS"] as $arItem):?>//цикл на добавление точек
                <?
                    $arMark = explode(",",$arItem["PROPERTIES"]["POINT"]["VALUE"]);
                    $centerMap[0] += $arMark[0];
                    $centerMap[1] += $arMark[1];
                    $countMark++; //получаем координаты
                ?>
            myPlacemark = new ymaps.Placemark([<?=$arMark[0]?>, <?=$arMark[1]?>], {}, balunIcon);
            	<?
    				$thisMark = $arMark;
    			?>
    			clusterer.add(myPlacemark);
            <?endforeach;?>
           
    myMap.geoObjects.add(clusterer);
    }
    </script>


    В итоге заработало и корректно выводит массив точек
    Ответ написан
    Комментировать