老师,当失去焦点时出了问题

来源:4-3 编程练习

Darkholme

2020-06-29 11:40:58

 当失去焦点时如果这么写就没问题,颜色会变$(this).css({'outline':'1px solid green'});

可是这么写就变不了色为什么??$(this).css({'outlineColor':'green'});


<!DOCTYPE html>

<html>


<head>

    <meta charset="UTF-8">

    <title>习题</title>

</head>


<body>

    <input type="text" value=""><span></span>

    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>

    <script>

        $('input').focus(function(){

            $('span').text('请输入内容');

            $(this).css({'outlineColor':'blue'});

        })

        $('input').blur(function(){

            if($(this).val() !=''){

                $(this).css({'outline':'1px solid green'});

                $('span').text('Correct!');

            }else{

                $(this).css({'outlineColor':'red'});

                $('span').text('请完善表单!');

            }

        })

   

    </script>

</body>


</html>


写回答

1回答

好帮手慕久久

2020-06-29

同学你好,问题解答如下:

失去焦点时,事件是起作用了的,如下:

http://img.mukewang.com/climg/5ef96745099434e512360290.jpg

而样式没有起作用的原因是,失去焦点时,input的outline-style这个属性被去掉了,而轮廓线outline,在缺少outline-style(轮廓的样式)属性时,不会显示轮廓。可在样式中添加如下代码,保证元素始终有outline-style属性:

http://img.mukewang.com/climg/5ef96766095cffed05500145.jpg

另外建议同学将outline换成border属性,因为border属性更常用。

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

1

0 学习 · 14456 问题

查看课程