0

我有这个名为“pachete”的div,它生成图像链接(单击图像并从数据库加载相应的地址),它可以工作我被发送到正确的页面,但我想要的是将该页面加载到我所在的页面中在(图片链接正下方)进入 new_page div,而不是重定向到它。“poza_efect”类是一个简单的不透明效果。我有一个 JavaScript 函数,但由于某种原因它不起作用。

<script>
    $('.stil_link_img').click(function () {
        $('#new_page').load($(this).attr('href'));

        return false;
    });
</script>

<div id="pachete">
    <?php $result=mysql_query( "SELECT* FROM imagini"); while($data=mysql_fetch_row($result)){ if( ($data[3]==1)&&($data[2]==2) ){ ?>
    <div class="stil_link_img">
        <a href="<?php echo $data[4];?>" class="poza_efect">
            <img src="upload/<?php echo $data[1];?>">
        </a>
    </div>
    <?php } }?>
</div>

<div id="new_page">//some content which should be replaced with my loaded page</div>
4

2 回答 2

2

在您的 Javascript 函数中,引用 $(this) 不是指向 A 元素,而是指向容器 DIV。尝试这样做:

    $('.stil_link_img a').click(function() ...

此外,将其包装到 $(document).ready(function() { .... }); 处理程序以确保元素已完全加载。

于 2013-02-14T07:52:22.493 回答
2

stil_link_img 点击事件是在元素加载之前注册的,所以这个事件永远不会被附加。利用

  • $(".stil_link_img").live(..)或者
  • 在页面完全加载后附加事件
  • 在循环之后移动 .click

此外,您应该将点击事件注册到 a-tag 而不是 div(或者,如果您愿意,请务必设置一些可点击的背景..)

于 2013-02-14T07:52:35.350 回答