• Компиляция sass?

    sayber
    @sayber
    Да, я программирую на PHP и еще асинхронно!
    Уберите подпись под именем front-end'er. Она не соответствует правде, вы ведь задали вопрос который любой фронтенд разработчик знает.

    Посмотрите что используется gulp, grunt, webpack, codekit etc...
    В корне проект должен быть файл.
    Найдете нужный файл конфига, поймете что использовать.
    Посмотреть, есть ли папка .idea, возможно компиляция была настроена при помощи IDE

    Так же можно посмотреть конфиг magento, возможно используется билдер в нем.
    Ответ написан
    5 комментариев
  • Убрать полосу прокрутке на сайте?

    Petroveg
    @Petroveg
    Миром правят маленькие с#@&ки
    Ваши проблемы в блоке с классом map_block. Достаточно поставить ему:
    .map_block {
    	overflow: hidden;
    }

    А вообще, ощущение каши.
    Ответ написан
    2 комментария
  • Как убрать рябь при масштабировании изображений в IE?

    swipeshot
    @swipeshot
    Учусь на ошибках.
    <!--[if IE]>
      <style type="text/css">
      body:before{
        content: "Ваш браузер - г**но!";
        background: salmon;
    }
      </style>
      <![endif]-->


    Не парьтесь.
    Ответ написан
    1 комментарий
  • Как предотвратить появление новых aside после каждого resize()?

    Liatano
    @Liatano
    Тебе просто нужно поставить флаг
    $(document).ready(function() {
        scriptsToggle();
    	
        $(window).resize(scriptsToggle);
    
    var flag1200=($('body').width() > 1200)?true:false;
    
    function scriptsToggle() {
        if (($('body').width() > 1200)&&!flag1200) {
            $('<aside></aside>')
                .appendTo('#wrapper');
    		flag1200=true;
        } else if (($('body').width() < 1200)&&flag1200){
            $('aside').remove();
    		flag1200=false;
        }
    }
    });
    Ответ написан
    Комментировать
  • Изменить цвет рамки у input?

    keslo
    @keslo
    Вам привели код, который клеится на все элементы input. Если вам нужно добавить CSS к конкретному одному, то делайте дополнительную селекцию input в CSS.
    Ответ написан
    Комментировать
  • Как разбить строку на отдельные слова?

    bobrov1989
    @bobrov1989
    Front-end Dev
    Ответ написан
    Комментировать
  • Как написать бэкэнд под задачу?

    viktorvsk
    @viktorvsk
    Сделал инструмент на Ruby для парсинга произвольного количества источников используя формат JSON + немного псевдо-DSL - обертку над DOM-парсером (css/xpath селекторы + фильтры). В качестве бонуса - веб-админ, более-менее простое масштабирование, кое-какой Планировщик. Все очень сыро, но, надеюсь, будет активно разрабатываться. В какой-то мере, реально используется уже сейчас.

    Надо понимать, что парсер - должен оставаться парсером. А вашу бизнес-логику (что куда добавить, когда что сохранить\кешировать в базу, когда что вывести) - должно решаться на уровне приложения

    Судя по Вашему вопросу, Вам для реализации описанного нужен будет квалифицированный исполнитель. Но, авось, пригодится: https://github.com/victorvsk/apify-kit
    Ответ написан
    Комментировать
  • Как написать бэкэнд под задачу?

    Makaveli
    @Makaveli
    1. Тот, которым владеете лучше. Или тот, который вам сейчас интересен и на изучение которого у вас сейчас есть время.
    2. Да. Например, настраиваете задание в cron на нужные дни.
    3. Да, можно. Сделайте отдельно парсер, который будет в нужные моменты времени парсить и класть нужное в базу, и отдельно инструмент, который будет выводить данные из базы.
    Ответ написан
    Комментировать
  • Как написать бэкэнд под задачу?

    @entermix
    1. Любой серверный, например PHP
    2. Да, планировщик (cron) в помощь
    3. А почему нет? Simple xml PHP парсит инфу, а куда ее отправить, это уже Ваше дело.
    Ответ написан
    Комментировать
  • Как сделать скриншот страницы полностью?

    rdifb0
    @rdifb0
    Программист, реалист
    В Firefox Shift-F2 и вводим screenshot file.png --fullpage
    Ответ написан
    11 комментариев
  • Как запретить закрытие dropdown меню в Bootstrap, при любом действии, кроме клика по кнопке?

    Замени скрипт дропдауна на вот этот

    +function ($) {
    'use strict';

    /**
    * @DROPDOWN CLASS DEFINITION
    *
    */

    var backdrop = '.dropdown-backdrop'
    var toggle = '[data-toggle=dropdown]'
    var Dropdown = function (element) {
    $(element).on('click.bs.dropdown', this.toggle)
    }

    Dropdown.prototype.toggle = function (e) {
    var $this = $(this)
    if ($this.is('.disabled, :disabled')) return

    var $parent = getParent($this)
    var isActive = $parent.hasClass('open')

    clearMenus()

    if (!isActive) {
    if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
    // if mobile we use a backdrop because click events don't delegate
    $('').insertAfter($(this)).on('click', clearMenus)
    }

    var relatedTarget = { relatedTarget: this }
    $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))

    if (e.isDefaultPrevented()) return

    $parent
    .toggleClass('open')
    .trigger('shown.bs.dropdown', relatedTarget)

    $this.focus()
    }
    return false
    }

    Dropdown.prototype.keydown = function (e) {
    if (!/(38|40|27)/.test(e.keyCode)) return

    var $this = $(this)

    e.preventDefault()
    e.stopPropagation()

    if ($this.is('.disabled, :disabled')) return

    var $parent = getParent($this)
    var isActive = $parent.hasClass('open')

    if (!isActive || (isActive && e.keyCode == 27)) {
    if (e.which == 27) $parent.find(toggle).focus()
    return $this.click()
    }

    var desc = ' li:not(.divider):visible a'
    var $items = $parent.find('[role=menu]' + desc + ', [role=listbox]' + desc)

    if (!$items.length) return

    var index = $items.index($items.filter(':focus'))

    if (e.keyCode == 38 && index > 0) index-- // up
    if (e.keyCode == 40 && index < $items.length - 1) index++ // down
    if (!~index) index = 0

    $items.eq(index).focus()

    }

    function clearMenus(e) {
    try{

    if($(e.target).closest('.dropdown-menu').length && !$(e.target).hasClass('dropdown-closer')){
    var c = true;
    }else if($(e.target).closest('.dropdown-menu').length && $(e.target).hasClass('dropdown-closer')) {
    var c = false
    }else {
    var c = false
    }
    if($(e.target).closest('.autoclose').length ) {
    var b = true
    }
    }catch(e){}
    $(backdrop).remove()
    $(toggle).each(function () {
    var $parent = getParent($(this))
    var relatedTarget = { relatedTarget: this }
    if (!$parent.hasClass('open')) return
    $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
    //console.log($(e.relatedTarget).hasClass('dontDrop'));
    if (e.isDefaultPrevented()) return

    if(!c || b){
    $parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
    }
    })

    }

    function getParent($this) {
    var selector = $this.attr('data-target')

    if (!selector) {
    selector = $this.attr('href')
    selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
    }

    var $parent = selector && $(selector)

    return $parent && $parent.length ? $parent : $this.parent()
    }

    var old = $.fn.dropdown

    $.fn.dropdown = function (option) {
    return this.each(function () {
    var $this = $(this)
    var data = $this.data('bs.dropdown')

    if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
    if (typeof option == 'string') data[option].call($this)
    })
    }

    $.fn.dropdown.Constructor = Dropdown

    $.fn.dropdown.noConflict = function () {
    $.fn.dropdown = old
    return this
    }
    $(document)
    .on('click.bs.dropdown.data-api', clearMenus)
    .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
    .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
    .on('keydown.bs.dropdown.data-api', toggle + ', [role=menu], [role=listbox]', Dropdown.prototype.keydown)

    }(jQuery);

    теперь у тебя будет открываться и закрываться дропдаун только по кнопке

    если надо сделать чтобы он работал как раньше
    то добавь класс autoclose на обертку твоего дропдауна как показано ниже

    Dropdown



      если допустим тебе понадобиться чтобы одно из меню дропдауна закрывало его а остальные нет, то надо сделать так

      Dropdown


      • ////// добавив на элемент li класс "dropdown-closer" он будет закрывать дропдаун, остальные 4 элемента - нет
    Ответ написан
    Комментировать