- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте. Помогите немного доработать код. Есть код, который рандомно выдает div блоки, которые появляются на пустом месте. Мне нужно сделать, чтобы блоки появлялись не на пустом месте, а заменяли уже находящиеся там другие блоки в которых были прописаны цифры.
(function (factory) { if(typeof module === 'object' && typeof module.exports === 'object') { factory(require('jquery'), window, document); } else { factory(jQuery, window, document); } }(function($, window, document, undefined) { /** * @function external:"jQuery.fn".randomFadeIn * @arg {null|string|number} [duration='slow'] - Duration. Same to jQuery ".fadeIn()" * @arg {boolean} [isLoop=true] - Whether to repeat * @return {Object} jQuery object */ $.fn.randomFadeIn = function (duration, isLoop) { return this.each(function() { new $.randomFadeIn(this, duration, isLoop); }); }; /** * @class external:jQuery.randomFadeIn * @arg {Object} elem - An element to apply this plugin * @arg {null|string|number} duration - Duration. Same to jQuery ".fadeIn()" * @arg {boolean} isLoop - Whether to repeat * @prop {Object} elemChildren - Children of an element to apply this plugin * @prop {string|number} duration - Duration. Same to jQuery ".fadeIn()" * @prop {boolean} isLoop - Whether to repeat * @prop {Array} order - An array that contains indexes of elements to be shuffled */ $.randomFadeIn = function(elem, duration, isLoop) { this.elemChildren = $(elem).children(); $(this.elemChildren).children().stop(true, false).hide(); this.duration = duration || 'slow'; this.isLoop = (isLoop === undefined) ? true : isLoop; // Create an array that contains order this.order = []; for (var i = 0, len = $(this.elemChildren).length; i < len; i++) { this.order[i] = i; } this.order = this._shuffleOrder(this.order); this._fadeInEach(0); }; $.extend($.randomFadeIn.prototype, /** @lends external:jQuery.randomFadeIn.prototype */ { /** * Shuffle the array of elements * * @private * @arg {Array} order - An array that contains indexes of elements to be shuffled * @return {Array} An shuffled array */ _shuffleOrder: function(order) { var idxLast = order.length; while (idxLast > 0) { var idxRandom = Math.floor(Math.random() * idxLast); idxLast--; var elemLast = order[idxLast]; // Exchange each other order[idxLast] = order[idxRandom]; order[idxRandom] = elemLast; } return order; }, /** * Run fade-in * * @private * @arg {number} idx - An index of element to be fade-in */ _fadeInEach: function(idx) { var len = $(this.elemChildren).length; var self = this; $(this.elemChildren).eq(this.order[idx]).children().fadeIn( this.duration, function() { idx++; if (idx < len) { // Run recursively until all elements fade in self._fadeInEach(idx); } else if (self.isLoop) { // Repeat fadeIn $(self.elemChildren).children().fadeOut(self.duration); self.order = self._shuffleOrder(self.order); self._fadeInEach(0); } } ); } }); // end of $.extend })); $(function() { $('.box-container').randomFadeIn(); });.box-container { width: 232px; } .box-container div { float: left; height: 50px; margin-bottom: 8px; margin-right: 8px; overflow: hidden; width: 50px; } .box-container div p { background: #097; box-sizing: border-box; color: #fff; display: none; font-size: 20px; height: 100%; margin: 0; padding-top: 14px; text-align: center; width: 100%; } .clearfix:after { clear: both; content: ''; display: block; }