【问题标题】:jQuery simple multiple modals on one html page一个html页面上的jQuery简单多个模式
【发布时间】:2014-07-05 11:52:29
【问题描述】:

我尝试了 Eric martin modal 插件的简单 modal。 我遇到了一点困难。我在 Html 页面上做了一个模态,但是如果我想在一个 HTML 页面中像第一个一样在一个 HTML 页面中添加更多模态,只是具有不同的背景和内容呢?

HTML:

<div id='content'>

    <div id='basic-modal'>



 <a href='#' class='basic'>white whine</a>


 <div id="basic-modal-content">

 <p> text text text</p>
          </div>  
          </div>
          </div> 

jQuery:

jQuery(function ($) {
// Load dialog on page load
//$('#basic-modal-content').modal();

// Load dialog on click
$('#basic-modal .basic').click(function (e) {
    $('#basic-modal-content').modal();


    return false;
});
});

【问题讨论】:

  • 顺便说一句,我知道 bg 在 #simplemodal-container css 文件中,但是我如何更改每个模态 #simplemodal-container 背景在 css 中的每个模态我想要做的相同html页面?

标签: jquery html css simplemodal eric-martin-modal


【解决方案1】:

除非您不同时打开它们,否则对您来说应该很容易。因为插件使用id 作为它的容器和插件中的一些元素。并且在页面中具有相同的 id 会在您的代码中产生问题。

这里是演示:http://jsfiddle.net/lotusgodkk/GCu2D/226/

HTML:

<div id='basic-modal'>
    <input type='button' name='basic' value='Demo' class='basic' />
    <div id="basic-modal-content1">Dialog 1</div>
    <input type='button' name='basic' value='Demo' class='basic' />
    <div id="basic-modal-content2">Dialog 2</div>
    <input type='button' name='basic' value='Demo' class='basic' />
    <div id="basic-modal-content3">Dialog 3</div>
</div>

jQuery:

$(document).ready(function () {
    $('#basic-modal .basic').click(function (e) {
        $(this).next('div').modal();
        return false;
    });
});

代码非常清晰。对于每个对话框实例,都有一个单独的 div 元素,其中包含单独的 html。就背景而言,您可以通过为对话框容器赋予 CSS 样式来实现。

对于 CSS,

此插件为containerId 提供了一个选项,可用于为容器分配自定义 ID。您也可以为不同的 CSS 使用相同的 ID。

演示:http://jsfiddle.net/lotusgodkk/GCu2D/227/

jQuery:

    $('#basic-modal .basic').click(function (e) {
    var c =  $(this).next('div');
    var id = c.attr('id')+'_c'; // create a custom Id.
    c.modal({
        containerId:id, 
    });
    return false;
});

CSS:

#basic-modal-content1_c{
    background-color:green;
}
#basic-modal-content2_c{
    background-color:red;
}
#basic-modal-content3_c{
    background-color:yellow;
}

通过这种方式,您可以更改 CSS。请参考插件的可定制选项。我很确定您可以将它们用于您的目的。

【讨论】:

  • 嘿,感谢您的快速回答。我不会同时打开它们。我如何为每个模式更改背景容器?我尝试在 CSS 文件中使用 id #simplemodal-container 背景值并将其更改为其他背景,但它不起作用,它仅更改了我制作的第一个模态的背景。如何更改 CSS 中每个模式的背景?
  • 哇,你救了我的命。在大它的工作原理!但是,如果我希望它不会在按钮内部,而是像我所做的那样在链接内部以及模态内部的

    内容,我该怎么做?您可以看到我在问题中编写的第一个代码是示例。谢谢

  • 我需要我拥有的带有 X img 的代码,而不仅仅是按下键盘上的退出按钮来退出模式。
  • 对于内部链接,只需提供要链接的按钮类即可。实际上,在您的代码中它将具有关闭图像。由于是小提琴,所以我没有使用图像。
  • 我如何在每个模态中放置文本?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多