JQuery调用弹出窗口

时间:2016-04-27 12:47:55

标签: javascript jquery button

我是学徒,从未使用过Javascript。 我的Javascript函数调用弹出窗口。这适用于第一个按钮,但不适用于以下所有,因为应用程序不断添加按钮(相同的类)我不能硬编码。我想这将是JQuery的解决方案...... (“打开”)(“openPopupUseExisting”)是两个按钮。

<script type="text/javascript">
    window.onload = function () {
        document.getElementById('blackout').addEventListener('click', function () {
            document.getElementById('popup').className = "";
            document.getElementById('blackout').className = "";
            document.getElementById('popupUseExisting').className = "";
        }, false);
        document.getElementsByClassName("open")[0].addEventListener('click', function () {
            document.getElementById('popup').className = 'visable';
            document.getElementById('blackout').className = 'visable';
        }, false);
        document.getElementsByClassName("openPopupUseExisting")[0].addEventListener('click', function () {
            document.getElementById('popupUseExisting').className = 'visable';
            document.getElementById('blackout').className = 'visable';
        }, false);
        document.getElementsByClassName("close")[0].addEventListener('click', function () {
            document.getElementById('popup').className = "";
            document.getElementById('blackout').className = "";
            document.getElementById('popupUseExisting').className = "";
        }, false);
    };
</script>

2 个答案:

答案 0 :(得分:2)

Quiz

看到document.getElementsByClassName("close")[0]

0返回一个类似数组的对象。你得到了第一个项目。

使用getElementsByClassName循环遍历它。

答案 1 :(得分:0)

朋友,您不需要添加整个库,只是为了绑定动态添加的元素。

您可以绑定$url = $this->container->get('router')->generate('homepage'); $response = new RedirectResponse($url); $response->setPrivate(); $response->setMaxAge(0); $response->setSharedMaxAge(0); $response->headers->addCacheControlDirective('must-revalidate', true); $response->headers->addCacheControlDirective('no-store', true); 的click事件,然后检查点击的元素是否是您想要的元素。它阻止动态添加的元素被解除绑定,因为它针对整个文档。

document

如果您真的想使用jQuery,那么它很简单,使用document.addEventListener('click', function (e) { if (e.target.classList.contains('blackout')) { // your fancy magic with .blackout } else if (e.target.classList.contains('open')) { // your fancy magic with .open } }, false); 方法

on