селектор прототипа, эквивалентный jQuery

Как выбрать всплывающее окно в блоке popup-lightbox?

в jQuery это будет что-то вроде $('div#popup-lightbox #popupwindow'). К сожалению, в Prototype это не так просто... кто-нибудь может мне помочь? Спасибо!

<div id="popup-lightbox" class="popup">
    <div id="popupoverlay"></div>
    <div id="popupdiv">
        <div id="popupwindow"></div>
    </div>
</div>

<div id="popup-modal" class="popup">
    <div id="popupoverlay"></div>
    <div id="modaldiv">
        <div id="popupwindow">
            <div id="modalint">Your changes have not been saved.</div>
        </div>
    </div>
</div>

person josephdotca    schedule 17.08.2010    source источник


Ответы (3)


Во-первых, вы неправильно используете атрибуты ID. Согласно спецификации W3C, атрибуты ID должны быть уникальными в документе.

Кроме того, синтаксис выбора прототипа немного отличается от jQuery:

$("popup-lightbox").select("#popupwindow")[0];
person desau    schedule 17.08.2010
comment
по какой-то причине у меня дублируются идентификаторы на странице. Я пытаюсь сделать их уникальными, но я должен заставить это работать. то, что вы предоставили, отлично работает, спасибо! - person josephdotca; 17.08.2010

Используйте побрякушки http://api.prototypejs.org/language/dollardollar/.

$$('#popup_lightbox #popup_window') (также вы неправильно используете идентификаторы, как сказали desau и fantactuka)

person Gabi Purcaru    schedule 17.08.2010

На самом деле, поскольку id должен быть уникальным на странице, я не уверен, что имеет смысл использовать сложный селектор. Почему бы не просто $('popupwindow')?

person fantactuka    schedule 17.08.2010