为了账号安全,请及时绑定邮箱和手机立即绑定

展开与收起效果

难度初级
时长 1小时 0分
学习人数
综合评分9.73
101人评价 查看评价
9.7 内容实用
9.8 简洁易懂
9.7 逻辑清晰

已采纳回答 / 团酱
当你执行第二次的时候,time<0,且h>300,所以就不执行if里面的了。你可以这样写:<...code...>
$(&quot;#strHref&quot;).click(function(){
if($(&quot;#hpn&quot;).is(&quot;:visible&quot;)){
$(this).text(&quot;收起-&quot;);
$(&quot;#hpn&quot;).hide(1000);
}else{
$(this).text(&quot;更多选项&quot;);
$(&quot;#hpn&quot;).show(1000);
}
})
});
nextSibling存在兼容性问题,只有在IE8以下老师说的那种方法才有效
通过href执行js代码也是一种方法,不过我认为实际做项目时还是用DOM比较合理
用vs搞web前端还真不多见,难道后端是用.net?
//$(document).ready(function() {
// $(&#039;#strHref&#039;).click(function() {
// if($(&#039;#hpn&#039;).is(&#039;:visible&#039;)) {
// $(&#039;#hpn&#039;).hide(1000);
// }else {
// $(&#039;#hpn&#039;).show(1000);
// }
// });
//})

$(document).ready(function() {
$(&quot;#strHref&quot;).click(function() {
$(&quot;#hpn&quot;).slideToggle(1000);
});
});
innerHTML是指某个元素内部的代码,而innerText是指某个元素的文本内容。
例子:&lt;div id=&quot;test&quot;&gt;&lt;p&gt;123&lt;/p&gt;&lt;/div&gt;
alert(document.getElementById(&#039;test&#039;).innerHTML);//弹出 &lt;p&gt;123&lt;/p&gt;
alert(document.getElementById(&#039;test&#039;).innerText);//弹出 123
y不展开的bug是因为有的浏览器把空格字符也算作节点,继续往后看到浏览器兼容那一节就明白了,不要着急哦
老师的代码,在JQ新版本下toggle实现不了,会出现飞按钮的情况,所以这个toggle不能用了,改成
$(document).ready(function () {

$(&quot;#strHref&quot;).click(function () {

$(&quot;#hpn&quot;).slideToggle(1000);

});

});

已采纳回答 / 慕粉3819970
nextSibling(previousSibling) 返回的是位于同一树层级的,指定节点之后(之前)的节点练习中两个<a>元素节点分别属于正文和概要的子节点,我们需要先获取<a>的父元素节点(parentNode),进而获取父元素节点的nextSibling或previousSibling
老师声音慵懒慵懒的,听着贼困
很简单,还在考虑只学习jquery的写法就行,现在对js更感兴趣。

已采纳回答 / ZhaoYuShu
不用写window.onload,你的js写在了body的最后面,代码是从上到下执行的,页面中的元素加载完就执行js代码,而window.onload的意思是等到页面加载完成后再执行。如果js代码写在head里面就要写window.onload。
课程须知
您至少具备HTML/CSS、JavaScript基础知识。
老师告诉你能学到什么?
1.掌握使用定时器控件动画。2.掌握节点式查找控件的方法。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消