【发布时间】:2016-07-08 08:39:10
【问题描述】:
我是 Jquery 的新手,所以我会给自己一些小事来做。现在,我正在尝试制作一个基本的“少读”和“多读”按钮。我做了很多工作,但有一件事一直困扰着我。这是我的一些代码:
$(".ReadMore").click(function() {
var numbers = ($(this).attr('id'));
$(".cat." + numbers).css("max-height", "9000px");
$(this).css("opacity", "0");
console.log($(".ReadLess#" + numbers).css("opacity", "1"));
});
还有少读:
$(".ReadLess").click(function() {
var numbers = ($(this).attr('id'));
$(".cat." + numbers).css("max-height", "230px");
console.log($(".ReadMore#" + numbers).css("opacity", "1"));
});
如您所见,它们几乎相同。 readmore 功能非常适合我。然而,少读不会。它使 .cat 具有良好的高度,但 Readmore 看起来并不像它应该的那样。我尝试通过控制台记录它,但我看到了一些差异,这是什么意思,以及如何让它工作。
编辑:
这里是两个按钮的html:
"<div class='ReadMore' id='$column_count' style='display: block; ' > ";
echo "Read more ...";
echo "</div>";
"<div class='ReadLess' id='$column_count' style='display: block '>";
echo "Read less...";
echo "</div>";
【问题讨论】:
-
在寻求帮助时,请花时间将您的代码格式化为可读性。
-
您的
id值以数字开头。这很好,但是除非您对它们进行转义,否则您不能将它们与 CSS ID 选择器一起使用。也就是说,.ReadLess#6是一个无效的 CSS 选择器,它不能可靠地跨浏览器工作。我强烈建议使用不要以数字开头的ids,因为它更简单。 -
“我看到了一点不同,这是什么意思” 什么区别?当然,我们也许能找到不同的东西,但我们不能保证它与您正在做的事情是一样的。
-
我们还需要查看 HTML。
-
抱歉不清楚,首先。当我尝试 console.log 函数的最后几行(如您在我的代码中所见)时,它们都给出了不同的答案。第一个以“div#6.ReadLess, prev...”开头,而另一个以“prevObject: m.fn ....”开头。这就是我想谈的区别。为什么它显示两个不同的答案,而它们(在我看来)是相同的代码。
标签: jquery object console.log