我有几个不同的项目和名称的div。每个人都有一个唯一的名称,我希望当用户点击一个名称时,它会将相应的页面加载到 popupContainer div中。出于某种原因,它并没有打电话。

这是Jquery:

$(document).ready(function(){
    //Find & Open
    $(".projectThumb").click(function(){
        htmlName = $(this).find("img").attr("name");
        $("#popupContainer").load(htmlName + ".html");
            });
    //Close property
    $("a.close").live("click", function(){
        $("#popupContainer").empty();
        });
});

这是html:

<div id="content">
    <div class="projectThumb">
    <img src="/img/aeffect_button_static.gif" width="146" height="199" class="button" name="aeffect" alt="" />
    <p class="title">A.EFFECT: Film Poster</p>
    </div>
    <div class="projectThumb">
    <img src="/img/lova_button_static.gif" width="229" height="199" class="button" name="lova" alt="" />
    <p class="title">Lova &ndash; Summer 07&rsquo; &ndash; Titles</p>
    </div>
</div>
<div id="popupContainer"></div>
有帮助吗?

解决方案

您没有关闭第一次点击功能,也没有正确打开 ready(function(){...})

$(document).ready(function(){ // <-- added missing open parens
 //Find & Open
 $(".projectThumb").click(function(){
   htmlName = $(this).find("img").attr("name");
   $("#popupContainer").load(htmlName + ".html");
 }); // <-- added needed closing function

 //Close property
 $("a.close").live("click", function(){
   $("#popupContainer").empty();
 });
});

其他提示

标签

<img ... >

没有属性“name” (仅限表格及其组成部分),使用“id” :)

您没有关闭第一次点击功能:

$(document).ready(function){
 //Find & Open
 $(".projectThumb").click(function(){
   htmlName = $(this).find("img").attr("name");
   $("#popupContainer").load(htmlName + ".html");
 }); <-- needed

 //Close property
 $("a.close").live("click", function(){
   $("#popupContainer").empty();
 });
});
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top