2015-12-10 3 views
2

Я следовал jQuery.NiceScroll для редактирования полосы прокрутки. Обычно, когда я вызываю $(selector).niceScroll(), он добавит tabindex и некоторые свойства css в селектор. Как это:jquery.nicescroll с неправильным значением tabindex

$('p.lead').niceScroll({autohidemode: false}); 

p

Затем, 2 дивы, который идентификатор начинается с ascrail будет добавляться к <body> тоже.

_p

Как вы можете видеть: если tabindex является 5000, 2 новые идентификаторы будут ascrail2000 и ascrail2000-hr.

Это означает, что мы можем получить доступ к <div> «S через:

var id = 2000 + (+$('p.lead').prop('tabindex') - 5000); 
var vertical = $('div#ascrail' + id); 
var horizontal = $('div#ascrail' + id + '-hr'); 

//do stuff... 

Это хорошо, пока я не использовать jQuery BlockUI, чтобы показать некоторые дивы, как всплывающее окно:

<div class="new-topic"> 
    <!-- another divs --> 

    <div id="tab-content5" class="tab-content"> 
    <div class="n-images">   
    </div> 
    </div> 

    <!-- another divs --> 
</div> 

Сценарий:

$.blockUI({ 
     message: $('div.new-topic'), 
     css: { 
      top: '50%', 
      left: '50%', 
      transform: 'translate(-50%, -50%)', 
      border: 'none', 
      cursor: 'default', 
      borderRadius: '5px', 
      width: '' 
     } 
    }); 
    $('div.n-images').niceScroll({autohidemode: false}); 

Затем я просмотрел страницу souce, tabindex был переопределены:

i

Но это не для div[id^="ascrail"]:

_i

Теперь, как я могу изменить CSS свойство z-index в div#ascrail2001 и div#ascrail2001-hr?

Этот способ не будет работать правильно:

//this will return 2000 instead of 2001 
var id = 2000 + (+$('div.n-images').prop('tabindex') - 5000); 

//if I can get the id correctly, every thing will became easy: 
//change z-index: auto -> z-index: 10001 
//because if z-index is smaller than 10000, it won't appear 

$('div#ascrail' + id).css('z-index', 10001); 
$('div#ascrail' + id + '-hr').css('z-index', 10001); 

Моя проблема: $(selector).niceScroll() не проверить существующие значения TabIndex и обновить новое значение TabIndex. (существующее значение: 5000, новое значение: 5001).

Итак, мой вопрос: как обновить новое значение до tabindex в этом случае?

p/s: Я использую mvc 5. <p class="lead"> находится в другом частичном виде, отличном от <div class="n-images">.

ответ

0

Я решаю проблему. Это потому, что я добавил

<script src"~/Scripts/jquery.nicescroll.js"></script> 

2 раза в 2 частичных изображений.

Я попытался удалить их, откройте BundleConfig.cs в App_Start папку и добавили эту строку:

bundles.Add(new ScriptBundle("~/bundles/nicescroll").Include(
         "~/Scripts/jquery.nicescroll.js")); 

Он должен работать. Спасибо за прочтение!

 Смежные вопросы

  • Нет связанных вопросов^_^