gpt4 book ai didi

javascript - 一种在 html 前面加上 jquery 的方法可行,但为什么另一种方法不行?

转载 作者:行者123 更新时间:2023-11-29 17:25:54 26 4
gpt4 key购买 nike

这种前置方式对我有用:

    <script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$("#learn-more-button").click(function() {
$("#main-text").load('ajax/learn-more.html #learn-more', function() {
$(this).prepend('<p> DARN </p>'); // <=== This here WORKS
$(this).hide().fadeIn(500); //Fade in
$("#main-text").animate({ // Then Animate
width:"500px",
left:'+=400px',},
400
);
});
});
});
</script>

这种前置方式对我不起作用:

   <script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$("#learn-more-button").click(function() {
$("#main-text").prepend('<p> DARN </p>'); // <=== This here doesn't work
$("#main-text").load('ajax/learn-more.html #learn-more', function() {
$(this).hide().fadeIn(500); //Fade in
$("#main-text").animate({ // Then Animate
width:"500px",
left:'+=400px',},
400
);
});
});
});
</script>

为什么第二种方式不行?应该怎么做才能让它发挥作用?

我不是真正的 jQuery 专家,所以非常感谢您的帮助 :)

最佳答案

当您执行 load() #main-text的内容元素被完全取代。因此,如果您添加 <p>DARN</p>load 之前- 与第二种方法一样,它会被覆盖。

在第一种方法中 <p>正在加载的回调函数中添加。这是在加载完成后调用的。

您还应该将方法链接到一个选择器以获得更好的性能,如下所示:

<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$("#learn-more-button").click(function() {
$("#main-text").load('ajax/learn-more.html #learn-more', function() {
$(this).prepend('<p> DARN </p>')
.hide().fadeIn(500)
.animate({
width:"500px",
left:'+=400px'
}, 400);
});
});
});
</script>

关于javascript - 一种在 html 前面加上 jquery 的方法可行,但为什么另一种方法不行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8818110/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com