2014-11-20 14 views
9

Mam ten dziwny problem, gdy przedmioty w czarnym pojemniku poniżej zostaną przeciągnięte do siatki powyżej. Jednak przedmioty mają ten nieprzejrzysty/pomarańczowy wygląd. Struktura komórki ma pojemnik i przedmiot w środku. Komórka kontenera ma pomarańczowe tło po najechaniu kursorem, ale jeśli przeniesię komórkę z czarnego kontenera szybko do siatki, więc wskaźnik myszy nie pokazuje, że działa dobrze.CSS nie aktualizuje się prawidłowo po przeciągnięciu/upuszczeniu jQuery, ale robi to w Inspektorze

Teraz przedmiot w środku ma klasę "show-game". Jeśli przełożę krycie na to z 1 na 0 iz powrotem na 1 w Inspektorze sieci otrzymam pożądany wygląd A1 vs A4.

Czy coś jest nie tak z moją przeglądarką Chrome? Tak się nie dzieje w IE. Wygląda na to, że styl nie jest odświeżany.

<td class="item-container draggable-item-container clearfix ui-droppable"> 
          <div data-tooltip="" class="item clearfix draggable-active draggable-item show-game ui-draggable tooltip-init" style="background-color: rgb(255, 55, 108);" data-bind="draggableCss: { disabled: $data.Disabled(), matchup: $data.Matchup, invalid: $data.Invalid, current: $data.Current }, draggableGameHandler : { disabled: !$data.Matchup, disabledDrop: $data.Disabled() }, delegatedClick: $root.members.eventSchedule.editGame.open.bind($data, true, ($data.Matchup && $data.Matchup.Type == '@((int)ScheduleType.Pool)'), $parent.Games)"> 

          </div> 
         </td> 



ko.bindingHandlers.draggableCss = { 
     update: function (element, valueAccessor) { 

      var values = valueAccessor(); 

      $(element).toggleClass('ui-droppable-disabled', values.disabled); 
      $(element).toggleClass('hide-game', (!values.matchup || !values.matchup.Selected())); 
      $(element).toggleClass('show-game', (values.matchup && values.matchup.Selected()) ? true : false); 
      $(element).toggleClass('empty', !values.matchup); 
      $(element).toggleClass('expand', viewModel.showTeams()); 

      if (values.editable) { 
       $(element).addClass('editable-game'); 
      } 

      if (values.matchup) { 

       if (values.matchup.Selected()) { 
        $(element).removeClass('occupied', false); 
       } 

       if (values.invalid && values.invalid()) { 
        updateElementColors(element, values.matchup.Color, 'invalid'); 
       } 
       else if (values.current && values.current()) { 
        updateElementColors(element, values.matchup.Color, 'current'); 
       } 
       else { 
        updateElementColor(element, values.matchup.Color, false); 
       } 

       if (values.matchup.CrossGame) 
        $(element).addClass('cross-game'); 


      } else if (values.invalid && values.invalid() && !values.disabled) { 
       updateElementColors(element, null, 'invalid'); 
      } else { 
       $(element).removeClass('invalid').removeClass('current'); 
      } 
     } 
    }; 

enter image description here

+0

Byłoby pomocne, gdybyś pokazał swój jquery. – EternalHour

+0

Kiedy więc sprawdzasz element, który jest wyświetlany niepoprawnie w inspektorze, wyliczone tam style są poprawne, ale nie pasują do rzeczywistej strony? – janfoeh

+0

Dokładnie, dotykam dowolnego stylu, a nawet poruszam inną komórkę w siatce, która naprawia się automatycznie. –

Odpowiedz

1

Jeśli używasz Google Chrome, otwórz kartę Sprawdzić, a następnie do zakładki "komputerowej". Powinieneś zobaczyć wszystkie css zastosowane do tego elementu i gdzie jest ustawione.

Sprawdź "ukrytą" regułę nadpisywania css.

Jeśli chcesz uniknąć przesłonięcia, wypróbuj znacznik "! Important" w regule css.

Powiązane problemy