0

我如何告诉 jquery 使用<a id="">or<a href="">作为 URL 来加载点击?例如 URL page1.php。通过获取 href,或通过获取 id 然后附加 .php

html

<a id="page1" class="load" href="page1.php">1</a>
<a id="page2" class="load" href="page2.php">2</a>
<a id="page3" class="load" href="page3.php">3</a>

jQuery

<script>
    $(document).ready(function () {  
        $(".load").click(loadDynamic);  
    });  
    function loadDynamic() {  
        $("#load_in")  
            .load("",function (content) {  
                $(this).hide().fadeIn("slow");  
                return false;  
        }); 
    }  
</script>
4

3 回答 3

3

用于this.href获取href.

$(document).ready(function() {
    $(".load").click(loadDynamic);
});

function loadDynamic() {
    $("#load_in").load(this.href, function(content) {
        $(this).hide().fadeIn("slow");
    });
        return false;
}​

当然你也可以使用this.id + ".php"

请注意return false,您在回调中编写,load因此它不会阻止默认的锚点点击!您应该将其移至答案中的外部范围。


对于那些抱怨的.click(fn)on('click', fn)

这些是相同的功能.click(fn)是的别名on('click', fn)

在前两个变体中,此方法是 .bind("click", handler) 的快捷方式,以及 jQuery 1.7 中的 .on("click", handler) 的快捷方式。

jQuery 文档

于 2012-05-28T21:50:37.990 回答
3

您可以使用this.href

$(".load").click(function() {
    $("#load_in").load(this.href, function() {
        $(this).hide().fadeIn("slow");
    });
    return false;
});

要获取 ID,请使用 simple this.id.

于 2012-05-28T21:51:30.797 回答
0

代替

.load("",function (content) {

.load(this.href, function (content) {
于 2012-05-28T21:51:42.130 回答