Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择next中的文本并将其附加到div中_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 选择next中的文本并将其附加到div中

Javascript 选择next中的文本并将其附加到div中,javascript,jquery,html,css,Javascript,Jquery,Html,Css,嗨,伙计们,我正试图找到下一个靠近这个的,并将其文本输出到同一页面中的另一个div中。问题是,当我进行编码并将其输出给用户时,它会显示为空白。下面是我的代码: $(document).ready(function(){ $('a.lightbox').click(function(e){ var txt = $(this).closest("#hh-name").text() alert(txt); $('body').css('overf

嗨,伙计们,我正试图找到下一个靠近这个的,并将其文本输出到同一页面中的另一个div中。问题是,当我进行编码并将其输出给用户时,它会显示为空白。下面是我的代码:

$(document).ready(function(){
    $('a.lightbox').click(function(e){
        var txt = $(this).closest("#hh-name").text()
        alert(txt);
        $('body').css('overflow-y',' hidden');

        $('<div id="overlay"></div>')
        .css('top', $(document).scrollTop())
        .css('opacity', '0')
        .animate({'opacity': '0.7'}, 'slow')
        .appendTo('body');

        $('<div id= "lightbox"></div>')
        .hide()
        .appendTo('body');

        $('<img>', {
            src: $(this).attr('href'),
            load: function() {
                positionLightboxImage();
            },
            click : function() {
                removeLightbox();
            }
        }).appendTo('#lightbox');
        return false;
    });
});

function positionLightboxImage() {
  var top = ($(window).height() - $('#lightbox').height()) / 2;
  var left = ($(window).width() - $('#lightbox').width()) / 2;
  $('#lightbox')
    .css({
      'top': top + $(document).scrollTop(),
      'left': left,
      'border': '7px solid white',
      'border-radius': '4px'
    })
    .fadeIn();
}

function removeLightbox() {
  $('#overlay, #lightbox')
    .fadeOut('slow', function() {
      $(this).remove();
      $('body').css('overflow-y', 'auto'); // show scrollbars!
    });
}

<a class="lightbox" href="<?php echo $row_searchHH['imageURL']; ?>"><img id="hh-image" src="<?php echo $row_searchHH['imageURL']; ?>" width="90" height="90" style="margin-left:10px" /></a></div></td>
        <td style="word-wrap:break-word; font-size:20px; font-family:'Myriad Pro'; font-weight:500" width="334" height="35"><p id="hh-name"><?php echo $row_searchHH['name']; ?></p>

提前感谢

您没有选择body元素,因为您的代码当前正在编写

尝试:

您可以看到

尝试以下操作:

使用最近的选择器不会为您返回任何内容,也不会查找兄弟姐妹。 我留下了调试警报,以便您将来知道如何检查此类内容

$('a.lightbox').click(
function (e)
{
    var $closest = $(this).next("#hh-name");
    alert($closest.length);

    var txt = $closest.text();
    alert(txt);

    $('<div id= "lightbox"></div>').appendTo('body');
    $('<p>' + txt + '</p>').appendTo('#lightbox');
}

)

此代码的目的是什么??我在选择选择器旁边的文本时遇到了很多问题。如果你看一下我的代码,它将是第3行和第4行,那么你创建了一个带有'lightbox'id的dive元素,并将其附加到body元素我没有问题将它提供的任何内容附加到lightbox div,但是问题是如何从旁边的中提取文本没有html结构很难判断,但是请尝试使用.findHey Javier下面是您的答案,这将有助于帮助您为什么不创建一个JSFIDLE来说明问题并删除所有多余的代码?此外,id和CSS类使用相同的名称lightbox肯定会引起混淆。这里有一个@Steve Wellens,我试图做的是,当我单击与类lightbox的链接时,会使用id lightbox创建一个div,并且a.lightbox旁边的标记中的文本会附加到lightbox中,但仍然不起作用。。。。第一个警报显示0,第二个警报未定义。我在下面添加了我的html/php代码。基本上,我拥有的是一个php重复区域,根据搜索结果,图像和名称将不起作用……在

中,有一个php语句从mysql表返回一个文本字段。我不知道这是否有什么不同。JSFIDLE有效吗?服务器上运行什么并不重要。重要的是客户端的HTML和JavaScript。

$('a.lightbox').click(function(e){
    var txt = $(this).siblings("#hh-name").text();
    $('<div id= "lightbox"></div>').appendTo('body');
    $('<p/>').text(txt).appendTo('#lightbox');
  });
$('a.lightbox').click(
function (e)
{
    var $closest = $(this).next("#hh-name");
    alert($closest.length);

    var txt = $closest.text();
    alert(txt);

    $('<div id= "lightbox"></div>').appendTo('body');
    $('<p>' + txt + '</p>').appendTo('#lightbox');
}