Smooth Div Scroll jquery не прокручивается

Прокрутка Smooth Div Scroll великолепна, но по какой-то причине область больше не прокручивается, когда я редактирую или удаляю #makeMeScrollable или #makeMeScrollable div.scrollableArea * Когда я оставляю все как есть, оно работает. Что является проблемой для настройки.

и это не сработает после того, как я уберу "*" из div.scrollableArea *

Если я отредактирую часть с

Было неприятно понять, почему та часть, которая должна быть редактируемой, вообще не работает.

Любая помощь с этим jquery будет полезна! Заранее спасибо!

/* You can alter this CSS in order to give SmoothDivScroll your own look'n'feel */

/* Invisible left hotspot */
div.scrollingHotSpotLeft
{
    /* The hotspots have a minimum width of 75 pixels 
       and if there is room the will grow and occupy 10% 
       of the scrollable area (20% combined). 
       Adjust it to your own taste. */
    min-width: 75px;
    width: 10%;
    height: 100%;
    /* There is a big background image and it's used to 
    solve some problems I experienced in Internet Explorer 6. */
    background-image: url(../images/big_transparent.gif);
    background-repeat: repeat;
    background-position: center center;
    position: absolute;
    z-index: 200;
    left: 0;
    /*  The first cursor url is for Firefox and other 
        browsers, the second is for Internet Explorer */
    cursor: url(../images/cursors/cursor_arrow_left.cur), url(images/cursors/cursor_arrow_left.cur),w-resize;
}

/* Visible left hotspot */
div.scrollingHotSpotLeftVisible
{
    background-image: url(../images/arrow_left.gif);                
    background-color: #fff;
    background-repeat: no-repeat;
    /* Standard CSS3 opacity setting */
    opacity: 0.35; 
    /* Opacity for really old versions of 
       Mozilla Firefox (0.9 or older) */
    -moz-opacity: 0.35;
    /* Opacity for Internet Explorer. */
    filter: alpha(opacity = 35);
    /* Use zoom to Trigger "hasLayout" in 
       Internet Explorer 6 or older versions */ 
    zoom: 1; 
}

/* Invisible right hotspot */
div.scrollingHotSpotRight
{
    min-width: 75px;
    width: 10%;
    height: 100%;
    background-image: url(../images/big_transparent.gif);
    background-repeat: repeat;
    background-position: center center;
    position: absolute;
    z-index: 200;
    right: 0;
    cursor: url(../images/cursors/cursor_arrow_right.cur), url(images/cursors/cursor_arrow_right.cur),e-resize;
}

/* Visible right hotspot */
div.scrollingHotSpotRightVisible
{
    background-image: url(../images/arrow_right.gif);
    background-color: #fff;
    background-repeat: no-repeat;
    opacity: 0.35;
    filter: alpha(opacity = 35);
    -moz-opacity: 0.35;
    zoom: 1;
}

/* The scroll wrapper is always the same width and 
   height as the containing element (div). Overflow 
   is hidden because you don't want to show all of 
   the scrollable area.
*/
div.scrollWrapper
{
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

div.scrollableArea
{
    position: relative;
    width: auto;
    height: 100%;
}
#makeMeScrollable
{
width:100%;
height: 330px;
position: relative;
}
#makeMeScrollable div.scrollableArea *
{
position: relative;
float: left;
margin: 0;
padding: 0;
}

http://www.smoothdivscroll.com/

//^ над ссылкой на jquery, о котором я говорю


person Razor    schedule 01.07.2011    source источник


Ответы (1)


Это все еще проблема или ее решили? Поскольку вы задали этот вопрос, была выпущена версия 1.2, и она работает немного иначе, чем версия 1.1.

В своем вопросе вы упоминаете, что все перестает работать, когда вы убираете звездочку в идентификаторе CSS «div.scrollableArea *». Этот идентификатор просто говорит «что угодно/любой тип элемента, который находится внутри scrollableArea. Если вы удалите его, вам нужно заменить его чем-то более конкретным. Если у вас есть изображения, вы используете «div.scrollableArea img». Если у вас есть div, вы используйте «div.scrollableArea div», если вы связали вещи, которые вы используете, «div.scrollableArea a» и так далее.

Важно то, что элементы, находящиеся внутри scrollableArea, отображаются одной длинной строкой. Метод, который я использовал для достижения этой цели, состоит в том, чтобы сделать их относительными, сместить их влево и установить для их свойства display значение block (необходимо для элементы, чтобы претендовать на свое конкретное горизонтальное пространство в DOM). Кроме того, вы можете установить практически все остальное на свой вкус.

person tkahn    schedule 05.04.2012
comment
Нет, проблема так и не была решена, так как я никогда не знал, что именно делать с кодом. И конкретно в этой части я так и не понял, на что заменить *. Он просто застыл и застрял. Если бы я разделил его до самой простой формы, он бы просто прокручивался, но мои div не отображались бы, и он просто прокручивался и глючил. Он будет просто отображать изображения. Для собственного использования этого jquery я использовал его для прокрутки своих div, изображений и списков. Это просто никогда не работало для меня. Он был либо заморожен (не прокручивался автоматически или вручную, либо прокручивался странно, а не так, как предполагалось в коде). - person Razor; 14.04.2012
comment
Когда дело доходит до CSS элементов, которые помещаются в прокручиваемую область, важно то, что они должны занимать свое пространство макета (display:block) и должны быть в одной длинной строке (float: left). У вас был смешанный контент в прокручиваемой области? В этом случае вы либо заключаете каждый элемент в div и устанавливаете селектор CSS в div.scrollableArea div, либо вам понадобится несколько селекторов (по одному для каждого типа элемента) div.scrollableArea div, div.scrollableArea img, div.scrollableArea a и скоро. Вы упомянули, что у вас есть список в прокручиваемой области? Он был завернут в div? - person tkahn; 16.04.2012
comment
Эй, спасибо за ответ! Итак, в основном у меня есть весь смешанный контент img, ul, li, div, завернутый в другой div, который находится в прокручиваемой области. Это считается? Или мне нужно было бы обернуть каждый отдельный элемент в свой собственный div, чтобы он работал? Сам список заключен в основной элемент div, который заключен в div.scrollableArea. - person Razor; 18.04.2012
comment
Если вам нужен бесконечный цикл, вы должны обернуть каждый фрагмент контента в div, но я думаю, что было бы нормально использовать только один div, если вы не хотите бесконечного цикла. Причина, по которой вам нужно несколько div, если у вас есть какая-то форма бесконечного цикла, заключается в том, что Smooth Div Scroll начнет менять местами элементы в бесконечной очереди. Если в очереди только один элемент, это не сработает. - person tkahn; 18.04.2012
comment
Хммм... так что же происходит, когда вся моя прокручиваемая область представляет собой список? Буду ли я обернуть каждый li в div в этом случае? Что с Улом? Мне нужно было бы настроить его так, чтобы в сценарии не было бесконечной прокрутки, или он просто автоматически не даст мне этого, основываясь на том факте, что каждый мой контент не заключен в свой собственный div? Звучит запутанно, но я очень ценю, что вы нашли время, чтобы помочь мне решить эту проблему. Я так давно хотел использовать этот скрипт, потому что не мог найти ничего, что работало бы так горизонтально. Это было идеально и соответствовало моей идее, но, к сожалению, у меня так и не получилось. - person Razor; 19.04.2012