js如何实现select下拉框选择


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

<html>

<head>

  <meta charset="UTF-8">

  <title>自定义select</title>

</head>

<style>

  *{

    margin: 0;

    padding: 0;

  }

  #main{

    position: relative;

    width: 280px;

    height: 42px;

  }

  #content{

    width: 280px;

    height: 42px;

    line-height: 42px;

    padding-left: 10px;

    background: rgb(255, 255, 255);

    border-radius: 2px;

    border: 1px solid rgb(221, 221, 221);

    font-size: 16px;

    font-family: MicrosoftYaHei;

    color: rgb(51, 51, 51);

    cursor: pointer;

  }

  #selectImg{

    position: absolute;

    top:13px;

    right: 10px;

    cursor: pointer;

  }

  #selectItem{

    display: none;

    border: 1px solid #eee;

    width: 290px;

  }

  #selectItem ul{

    list-style: none;

  }

  #selectItem ul li{

    height: 30px;

    line-height: 30px;

    padding-left: 10px;

    cursor: pointer;

  }

  #selectItem ul li:hover{

    background-color:#f5f7fa;

  }

</style>

<body>

  <div id="main">

    <div id="content">

 

    </div>

    <img id="selectImg" src="./icon_select.png" alt="">

    <div id="selectItem">

    <!--  <ul>

        <li data-value="1">北京</li>

        <li data-value="2">上海</li>

        <li data-value="3">深圳</li>

      </ul>-->

    </div>

  </div>

 

</body>

<script>

  var data = [{name:'北京',value:'1'},{name:'上海',value:'2'},{name:'广州',value:'3'}]

  var content = document.getElementById('content');

  var selectImg = document.getElementById('selectImg');

  var selectItem = document.getElementById('selectItem');

 

  var ul = document.createElement('ul');

  selectItem.appendChild(ul);

  for(var i = 0; i < data.length; i++){

    var li = document.createElement('li');

    li.setAttribute('data-value',data[i].value);

    li.innerText = data[i].name;

    ul.appendChild(li);

  }

  /**

   * 点击下拉箭头

   */

  selectImg.onclick = function () {

    console.log(selectItem.style.display);

    if(selectItem.style.display == 'none' || selectItem.style.display == ''){

      selectItem.style.display = 'block';

    }else{

      selectItem.style.display = 'none';

    }

 

  }

 

  content.onclick = function () {

    if(selectItem.style.display == 'none' || selectItem.style.display == ''){

      selectItem.style.display = 'block';

    }else{

      selectItem.style.display = 'none';

    }

  }

 

  var lis = selectItem.getElementsByTagName('li');

  for(var i = 0; i < lis.length; i++){

    lis[i].onclick = function () {

      console.log(this.innerHTML,this.getAttribute('data-value'));

      content.innerText = this.innerHTML;

      selectItem.style.display = 'none';

    }

  }

</script>

</html>

更多炫酷CSS3、html5、javascript特效代码,尽在:js特效大全

以上就是js如何实现select下拉框选择的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

js的原型和原型链是什么

js简单上传图片预览功能的实例详解

网页中写js有什么作用

html5和js绘制图片到canvas的方法

js null是什么类型

css和js后加问号和数字有什么用

秒懂js的垃圾回收机制

简单实用的进度条加载组件loader.js

js实现斐波那契列数的三种方法

鲜为人知的 json.stringify 用法

更多相关阅读请进入《js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...