JQuery динамически добавленный DOM теряет (не) стиль CSS - PullRequest
0 голосов
/ 01 марта 2012

У меня проблема с тем, что в JQuery динамически добавленные узлы DOM не принимают стили, определенные в файле CSS.

Я посмотрел вокруг, и ответы, которые я видел , не решайте проблему.Т.е. соответствующий CSS находится в пути относительно страницы хоста.Это определенно в памяти.Но если я использую A) или B), добавленный или загруженный 'newNode' не принимает уже загруженные стили.

A) $("#some-selector").append(newNode);

B) $("#some-selector").load("/path/to/newNode.html");

Я считаю, что мне нужно вручную добавить стиль, такой как

C) $(".loadedElement").css('some-style','some-value');

Кто-нибудь решил эту проблему?

Заранее спасибо.

--- РЕДАКТИРОВАТЬ

Так что я получил немного дальше.У меня был HTML как A) и CSS как B).Оказывается, что вложенный селектор CSS не соответствовал нужным мне узлам.Пришлось спускаться к селектору как в С).Тогда к моим динамическим узлам применяется стиль.Но я действительно предпочел бы иметь что-то вроде B).Мой CSS выключен?

A)

<div id='6bullet-container'>
  <input id='six-bullet-image-upload' name='convert' type='file'>
    <div class='six-bullet-content-wrapper'>
      <div class='six-bullet-container-label'>
        click to upload
      </div>
      <div id='six-bullet-title'></div>
      <div class='six-bullet-bullet' id='six-bullet-one'></div>
      <div class='six-bullet-bullet' id='six-bullet-two'></div>
      <div class='six-bullet-bullet' id='six-bullet-three'></div>
      <div class='six-bullet-bullet' id='six-bullet-four'></div>
      <div class='six-bullet-bullet' id='six-bullet-five'></div>
      <div class='six-bullet-bullet' id='six-bullet-six'></div>
   … 

B)

#6bullet-container #six-bullet-image-upload .six-bullet-content-wrapper .six-bullet-bullet {
   my: style;
}

C)

.six-bullet-bullet {
    my: style;
}

1 Ответ

2 голосов
/ 01 марта 2012

Этот селектор CSS:

#6bullet-container #six-bullet-image-upload .six-bullet-content-wrapper .six-bullet-bullet  { ... }

Подразумевает, что «упаковка с шестью маркерами» является дочерней по отношению к «загрузке с шестью маркерами», что невозможно, поскольку «загрузка с шестью маркерами» является полем ввода файла и не может иметь дочерних элементов.

...