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

为什么点击颜色的li 高度变化

为什么点击颜色的li 高度变化

啊啊啊啊123 2017-01-31 10:43:37
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> *{ padding: 0; margin: 0; } .news li{ list-style-type: none; display: inline-block; background-color: #666; padding: 10px; } #box{ width: 200px; margin: 0 auto; } #box .color li{ display: inline-block; margin: 10px; width: 20px; height: 20px; } #box .color li:nth-child(1){ background-color: red; } #box .color li:nth-child(2){ background-color: yellow; } #box .color li:nth-child(3){ background-color: blue; } #box .color li:nth-child(4){ background-color: pink; } .it:before{ content: "√"; } </style> <script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script> </head> <body> <div id="box"> <div id="box1"> <ul class="color"> <li></li> <li></li> <li></li> <li></li> </ul> </div> <ul class="news"> <li>时事新闻</li> <li>娱乐新闻</li> </ul> </div> </body> <script> $().ready(function () { $(".color>li").click(function () { $(this).addClass("it").siblings().removeClass("it"); console.log($(this).css("backgroundColor")); var bgc = $(this).css("backgroundColor"); $(".news>li").css("backgroundColor", bgc) }) }) </script> </html>
查看完整描述

1 回答

?
IT自学

TA贡献16条经验 获得超25个赞

谢邀,只想说写的好乱的代码:

补充一句,按照加载顺序写的js代码,是不需要加页面载入事件的,有点多此一举。

JQ页面载入事件,是你独创的吗?

我见过这样载入的:

$(document).ready(functin(){

    //代码部分

})

还有这样载入的:   

jQuery(document).ready(function(){

    //代码部分

})

  还有这样载入的:

$(function(){

    //代码部分

})

和这样载入的:

jQuery(function(){

    //代码部分

})

对比了一下,您的载入方法和第一种最像,那么document被吃掉了?   




再就是,你的类名color在哪个元素上呢?老大

$(".color>li")就这句,我怀疑它怎么可能运行,类名color都没有被加上,你点击怎么会有效果?


还有设置单个CSS属性的JQ语法是:$().css("属性","属性值"),下面这句代码几个意思?$(".news>li").css("backgroundColor", bgc)


我看了你的代码,感觉你JS好像也学的不扎实,直接奔JQ了,伙计,有点心急啊,基础都没打牢,有点不会走就想跑的感觉,建议先打好基础,再看框架吧。

我一个只是业余学习代码的人都看出这么多基础性的问题,不是打击你,如果去应聘,估计你要考这样的水平去面试,根本没戏,除非那个企业也是业余二流。

查看完整回答
反对 回复 2017-01-31
  • 啊啊啊啊123
    啊啊啊啊123
    首先关于jq的加载写法我附图了,其次少的class不是我没写而是这个复制过来自己丢掉的而且格式都乱了 。现在你考过去试试能不能运行!
  • IT自学
    IT自学
    可以运行了,说的不对的地方,请多理解了,业余水平,呵呵。 和你说的一样,出现了点击后,被点击的按钮下滑了,这是因为,含有文本内容(含文本符号)的块元素(如li)在inline-block之后,会触发li元素的一个属性vertical-align,触发后,默认的vertical-align属性值为:baseline,就是按照文本的基线对齐,需要修改一下属性值就可以,修改为按顶部对齐(top)即可,这样点击就不会出现下滑现象了。 下面就是修改后的代码,去多了多余的盒子box1,去掉了页面载入事件。
  • IT自学
    IT自学
    #box .color li{ display: inline-block; margin: 10px; width: 20px; height: 20px; vertical-align: top; }
点击展开后面2
  • 1 回答
  • 0 关注
  • 1480 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信