首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jQuery弹出div中显示信息

问在jQuery弹出div中显示信息
EN

Stack Overflow用户
提问于 2014-05-22 14:26:28
回答 2查看 334关注 0票数 1

我有一个有多个区域的页面,当点击这些区域时,会显示一个弹出的div,里面有信息。弹出效果很好,并且实际上显示了内部的信息,但是,它是所有可点击区域的信息,而不是特定于单击区域的信息。我的问题是,如何让弹出窗口显示该区域的特定信息?

代码语言:javascript
复制
<div id="wrapper">
    <div id="content">
    <div class="example"><img src="images/army.jpg" /><div class="description"><p>Active Duty</p></div></div>
    <div class="example"><img src="images/reserve.jpg" /><div class="description"><p>Reserves</p></div></div>
    <div class="example"><img src="images/gsu.png" /><div class="description"><p>Georgia Southern</p></div></div>
    <div class="example"><img src="images/twc.png" /><div class="description"><p>The Weather Chanel</p></div></div>
    <div class="example"><img src="images/fsi.jpg" /><div class="description"><p>FlightSafety International</p></div></div>
    <div class="example"><img src="images/freelance.jpg" /><div class="description"><p>Freelance</p></div></div>
    </div>
</div>

JAVASCRIPT

代码语言:javascript
复制
$(document).ready(function(){
    $('#wrapper').append('<div id="mask"></div>');
    $('#wrapper').append('<div id="popup"><p class="close">X</p></div>');
    $('.example').append('<p>Click here to read about my experience<p>');
    $('#content').find('.description').each(function(){
    var text = $(this).find('p').text();
    $('#popup').append(text);
    })

    $('.example p').on('click', function(){
    $('#popup, #mask').show();
    })

    $('.close, #mask').click(function(){
    $('#popup, #mask').hide();
    })
})

这是我的钢笔,可以作视觉参考。http://codepen.io/RobbyT15/pen/dCiIE

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-22 14:37:40

移除以下线条:

代码语言:javascript
复制
$('#content').find('.description').each(function(){
    var text = $(this).find('p').text();
    $('#popup').append(text);
});

然后更改单击:

代码语言:javascript
复制
$('.example p').on('click', function(){
    $('#popup').text($(this).prev('.description').text());
    $('#popup, #mask').show();
})

它应该能起作用

票数 1
EN

Stack Overflow用户

发布于 2014-05-22 14:39:37

因为只有一个弹出窗口,所以只有在单击特定的<p>元素时才需要添加内容。尝试:

代码语言:javascript
复制
$('.example p').on('click', function(){
    var text = $(this).prev('.description').find('p').text();
    $('#popup').html(text);
    $('#popup, #mask').show();
})

http://codepen.io/anon/pen/herCJ

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23809662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档