Используйте атрибут данных в HTML для изображения вместо редактирования JavaScript

Здесь это решение Scala:

(for (i <- 0 until rnd.nextInt(64)) yield { 
  ('0' + rnd.nextInt(64)).asInstanceOf[Char] 
}) mkString("")
0
задан Jamdev 16 January 2019 в 12:55
поделиться

2 ответа

  1. Добавьте атрибут data-sticky к элементу изображения. Это будет значение, которое будет обновляться на изображении, когда вы решите применить его.
  2. Первоначально сохранить значение src изображения по умолчанию для обращения.
  3. Toggle .sticky class & amp; image src on scroll

Итак, ваше изображение будет выглядеть так:

<img src="assets/images/logo.png" alt="" data-sticky="assets/images/logo-sticky.png" />

И ваш JS:

// Initially set the original src
var navbarImg = $('.navbar-brand > img')
navbarImg.data('original', navbarImg.attr('src'))

// Update on scroll
$(window).scroll(function() {
    var stickyNav = $('.sticky-navbar');
    var isSticky = $(this).scrollTop() > 50;
    stickyNav.toggleClass('sticky', isSticky);
    navbarImg.attr('src', navbarImg.data(isSticky ? 'sticky' : 'original'));
});
0
ответ дан Cue 16 January 2019 в 12:55
поделиться

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

<img src="" alt="" data-logo="assets/images/logo.png" data-sticky="assets/images/logo-sticky.png">

и переключать значение атрибута src с помощью JQuery:

[ 111]

, чтобы добавить логотип в src при загрузке страницы:

$(document).ready(function(){
    $('.navbar-brand img').attr('src',$('.navbar-brand img').data('logo'));
});

jsfiddle демо .

Надеюсь, что помогает:)

0
ответ дан Shubanker 16 January 2019 в 12:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: