首页 > 其他分享 >jQuery和Bootstrap

jQuery和Bootstrap

时间:2022-12-07 22:12:42浏览次数:39  
标签:jQuery function 标签 Bootstrap 查找 div class

  • jQuery类库

  • 标签对象与jQuery对象

  • jQuery查找标签

  • 操作标签

  • jQuery事件

  • jQuery动画效果

  • Bootstarp页面框架

  • 组件

jQuery类库

'''基本'''
1.兼容多浏览器
	IE浏览器:很多时候针对IE浏览器前端需要重新写一份代码操作
2.封装了js代码
	核心代码也就几十KB 加载速度快 极大的提升编写效率 
3.宗旨
	"Write less, do more."
4.Ajax交互
	异步提交 局部刷新
    
'''版本区别''' 
1.x:兼容IE678
2.x:不兼容IE678
3.x:不兼容IE678  学习直接使用最新版即可
 
'''下载使用'''
下载地址:https://jquery.com/
	1.下载核心文件到本地引入(没有网络也可以使用)
    	<script src="jQuery3.6.js"></script>
	2.CDN网络资源加载(必须有网络才可以使用)
    	https://www.bootcdn.cn/

https://cdn.bootcdn.net/ajax/libs/jquery/3.6.1/jquery.js
   https://cdn.bootcdn.net/ajax/libs/jquery/3.6.1/jquery.min.js
            
'''导入方式'''
1.本地jQuery文件
	不会收到网络影响
2.CDN加速服务
	需要确保有互联网
	min.js  压缩之后的文件 容量更小  
     .js    没有压缩的文件 容量稍大
 
'''什么是CDN'''
  内容分发网络

'''基本使用'''
将页面上的两个p标签文本内容一个变成红色 一个变成蓝色
js代码
  let p1Ele = document.getElementsByTagName('p')[0]
  let p2Ele = document.getElementsByTagName('p')[1]
  p1Ele.style.color = 'red'
  p2Ele.style.color = 'blue'

jQuery代码
	$('#d1').css('color','red').next().css('color','blue')

标签对象与jQuery对象

1.不同的对象能够调用的方法是不同的
	在编写代码的时候一定要看清楚手上是什么对象
2.两者可以互相转换
	标签对象转jQuery对象		
    	$(标签对象)
 	jQuery对象转标签对象
    	jQuery对象[0]

jQuery查找标签

  • 选择器
1.基本选择器
$('#d1')   id选择器
$('.c1')   class选择器
$('div')   标签选择器

2.组合选择器
$('div#d1')       # 查找id是d1的div标签
$('span.c1')      # 查找含有c1样式类的span标签
$('div.span.p')   # 查找div或者span或者p标签
$('#d1.c1.span')  # 查找id是d1或者class含有c1或者span标签

3.层级选择器
$('div p')        # 查找div里面所有的后代p标签
$('div>p')        # 查找div里面的儿子p标签
$('div+p')        # 查找div同级别下面紧挨着的p标签
$('div~p')        # 查找div同级别下面所有的p标签

4.属性选择器
$('[username]')         # 查找函数username属性名的标签
$('[username="jason"]') # 查找含有username属性并且值等于jason的标签
$('input[username="jason"]') # 查看含有username属性并且值等于jason的input标签
  • 筛选器
1.基本筛选器
$('ul li:first')         //查找第一个li
$('ul li:last')          //查找最后一个li
$('ul li:eq(index)')     //索引等于index的那个元素
$('ul li:even')          //匹配所有索引值为偶数的元素,从0开始计数
$('ul li:odd')           //匹配所有索引值为奇数的元素,从0开始计数
$('ul li:gt(index)')     //匹配所有大于给定索引值的元素
$('ul li:lt(index)')     //匹配所有小于给定索引值的元素
$('ul li:not(元素选择器)') //移除所有满足not条件的标签
$('ul li:has(元素选择器)') //选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)
$('li:first')    优化   $('li').first()


2.表单筛选器:专门针对from表单内的标签
$(':text')           //找到所有type属性为text的input标签
$(':password')       //找到所有type属性为password的input标签
$(':file')           //找到所有type属性为file的input标签
$(':radio')          //找到所有type属性为radio的input标签
$(':checkbox')       //找到所有type属性为checkbox的input标签
$(':submit')         //找到所有type属性为submit的input标签
$(':reset')          //找到所有type属性为reset的input标签
$(':bytton')         //找到所有type属性为bytton的input标签 


$(':enabled')        //找到所有含有enabled属性的input标签 
$(':disabled')       //找到所有含有disabled属性的input标签
$(':checked')        //找到所有含有checked属性的input标签
$(':selected')       //找到所有含有selected属性的input标签
  • 筛选器方法
# 同级别往下查找
$('#id').next()               //找同级别下一个标签
$('.cls').nextAll()           //找到下面所有同级别标签
$('.cls').nextUntil('#cls2')  //同级别下向下找直到cls2标签类

# 同级别往上查找
$('#id').prev();              //找同级别上一个标签
$('.cls').prevAll();          //找到上面所有同级别标签
$('.cls').prevUntil('#cls2'); //同级别下向上找直到cls2标签类

# 查找父标签
$('#id').parent()             //查找当前标签的父标签
$('.cls').parents()           //查找当前标签的所有父辈标签
$('.cls').parentsUntil()      //查找当前标签的所有父辈标签,直到遇到匹配的那个标签为止

# 查找儿子和兄弟标签
$('#id').children()           //所有儿子标签
$('#id').siblings()           //同级别上下所有标签

# 链式操作
$('#d1').parent().parent().parent()
$('#d1').parent().parent().next().parents()
一个对象操作完毕之后还可以继续点击相同或不同的方法操作其他标签

"""	
核心:
	对象在调用完一个方法之后返回的还是一个对象
"""

操作标签

'''
jQuery代码查找标签绑定变量名推荐使用$xxxEle
'''

# 增加css类名
addClass()     //相当于原生js中的classList.add()
$divEle.addClass('c3')

# 移除css类名
removeClass()  //相当于原生js中的classList,remove()
$divEle.removeClass('c3')

# 判断有没有指定的css类名
hasClass()     //相当于原生js中的classList.contains()
$divEle.hasClass('c2')

# 有则移除 无则增加
toggleClass()  //相当于原生js中的classList.toggle()
$divEle.toggleClass('c4')

# 样式操作
增加一个粉红色的实线边框
$divEle.css('border','3px soild pink')

# 位置操作
$(window).scrollTop()  //用于获取左侧滚动条距离顶端的位置

"""
 实时监测距离
  $(window).scroll(function () {
      if($(window).scrollTop() > 500){
      alert('超过本页500了')
      }
  })
"""
  • 文本值操作
jQuery           DOM
# 获取文本
text()           innerText
# 获取HTML标签
html()           innerHTML
# 获取value值
val()            value
"""
 使用空括号就是获取,括号里面放操作代码就是设置
"""
jQuery对象[0].files	  files[0]

# 创建标签
$('<a>')        document.createElement()
  • 属性操作
# 获取第一个标签为style属性值
$('div').attr('style')
# 批量设置单个
$('div').attr('class','c1')
# 批量设置多个
$('div').attr({'name':'owen','pwd':111})
# 批量移除
$('div').removeAttr('class') 

"""
 获取标签属性的时候, 针对动态属性尤其是复选框不建议使用attr()
 prop('checked')  # 结果为布尔值
 prop('checked',false) # 动态设置
 attr针对动态变化的属性获取会失真
"""
  • 文档处理
#内部添加    
$(A).append(B)// 把B追加到A
$(A).appendTo(B)// 把A追加到B
$(A).prepend(B)// 把B前置到A
$(A).prependTo(B)// 把A前置到B
    
#外部添加    
$(A).after(B)// 把B放到A的后面
$(A).insertAfter(B)// 把A放到B的后面
$(A).before(B)// 把B放到A的前面
$(A).insertBefore(B)// 把A放到B的前面
    
# 清空内容
remove()// 从DOM中删除所有匹配的元素
empty()// 删除匹配的元素集合中所有的子节点

jQuery事件

# JS绑定事件
标签对象.on事件名 = function(){}
jQuery事件绑定

# jQuery事件绑定
方式1:
	jQuery对象.事件名(function(){})
方式2:
	jQuery对象.on('事件名称',function(){})
ps:默认就用方式1 不行了再用方式2

# 克隆操作
<button id="d1">小朋友快来玩呀</button>
<script>
    $('#d1').click(function () {
        // $('body').append($(this).clone())  // 不克隆事件(克隆的不是实体, 只有一个实体)
        $('body').append($(this).clone(true))  // 克隆事件(克隆的都是实体)
        })
</script>
  • 悬浮事件
# 鼠标悬浮在上面和移开时触发各一次
$('#d1').hover(function () {alert('芜湖芜湖')})

# 想要将悬浮和移开分开执行不同的操作,就要写两个函数
    $('#d1').hover(
       function () {alert('要不要来点好康的')},

	   function () {alert('这么快就走啦')}
)
  • 值监听事件
"""
 jQuery绑定事件有两种方式
   $('#d1').click(function(){})
   $('#d1').on('click', function(){})
"""

# 实操
<input type="text" id="d1">
<script>
    $('#d1').on('input',function () {
        console.log($(this).val())
    })
</script>
  • 阻止后续事件
阻止后续事件
"""
  如果给已经有事件的标签绑定事件, 那么会依次执行
  如果想要取消后续时间的执行有两种方式
"""
方式一:
    $('#di').click(function(){
        alert()
        return false
    })
方式二:
    $('#d1').click(function (e) {
            alert('bibibi')
            e.preventDefault()
    })
# 推荐使用第一个
  • 阻止事件冒泡
"""
 在多个标签嵌套的并且都有相同事件的情况下, 会出现逐级汇报的现象
"""
方式1
	return false
方式2
	e.stopPropagation()
# 代码实现
<div id="d3"> 这是div标签
    <p id="d2"> 这是p标签
        <span id="d1"> 这是span标签</span>
    </p>
</div>
<script>
    $('#d1').click(function (){
        alert('span')
        return false
    })
    $('#d2').click(function (e){
        alert('p')
        e.stopPropagation()
    })
    $('#d3').click(function (){
        alert('div')
        return false
    })
  • 等待页面加载完毕再执行代码
$(function(){})				     缩略写法
$(document).ready(function(){})  完整写法
  • 事件委托
"""
 针对动态创建的标签,提前写好的事件默认都是无法生效的
"""
# 书写格式
$('body').on('事件类型','选择器',function(){})

# 将body内所有的点击事件交给button标签处理
$('body').on('click','button',function(){})

jQuery动画效果(了解)

// 基本
show([s,[e],[fn]])
hide([s,[e],[fn]])
toggle([s],[e],[fn])
// 滑动
slideDown([s],[e],[fn])
slideUp([s,[e],[fn]])
slideToggle([s],[e],[fn])
// 淡入淡出
fadeIn([s],[e],[fn])
fadeOut([s],[e],[fn])
fadeTo([[s],o,[e],[fn]])
fadeToggle([s,[e],[fn]])
// 自定义(了解即可)
animate(p,[s],[e],[fn])

Bootstrap页面框架

别人已经提前写好了一大堆css和js 我们只需要引入之后按照人家规定好的操作方式即可使用所有的样式和功能

版本有很多 使用V3即可
https://v3.bootcss.com/css/

文件结构
	bootstrap.css
 	bootstrap.js
	ps:js部分是需要依赖于jQuery
  
CDN
<link href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" >
<script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>

pycharm自动提示问题
	最好本地导入几次
'''使用bootstrap其实只需要操作标签的样式类即可'''
  • 布局容器
class = "container"        # 两边有留白
class = "container-fluid"  # 没有留白
  • 栅格系统
class = "row"        默认开设一行均分12份
class = "col-md-n"   指定需要几份(电脑屏幕)

# 栅格参数可以做到响应式布局 屏幕参数
col-md-6 col-xs-2 col-sm-3 col-lg-3

# 如果一行十二份用不完 可以调整位置 栅格偏移
col-md-offset-3
  • 重要样式
# 表格格式
<table class="table table-hover table-striped">
    
# 单元格颜色
class="active"
class="success"
class="warning"
class="danger"
class="info"

# 表单标签
.pull-left			左浮
.pull-right			右浮
class='form-control'
针对radio和checkbox不能加

#按钮样式
class = "btn btn-primary btn-block"

组件

# 图标
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>

# 导航条
class="navbar navbar-inverse"

#更多图标
https://fontawesome.com.cn/

标签:jQuery,function,标签,Bootstrap,查找,div,class
From: https://www.cnblogs.com/super-xz/p/16964701.html

相关文章

  • jQuery 查找标签 事件 Bootstrap页面框架
    1.查找标签1.基本选择器: $('#d1'):id选择器 $('.c1'):class选择器 $('div'):标签选择器2.组合选择器: $('div#d1'):查找id为d1的div标签 $('div.c1'):查找c......
  • jQuery 查找标签 事件 Bootstrap页面框架
    jQuery查找标签基本筛选器 :first//第一个:last//最后一个:eq(index)//索引等于index的那个元素:even//匹配所有索引值为偶数的元素,从0开......
  • 前端开发:6、jQuery类库简介与基本使用
    jQuery类库目录jQuery类库一、简介二、jQuery查找对象1、选择器......
  • jQuery
    jQueryjQuery查找标签#基本选择器$("#id")#id选择器$("tagName")#标签选择器$(".className")#class选择器#组合选择器$("div.c1") #找到有c1class......
  • 第六章:bootstrap基础
    bootstrap简介该框架已经帮你写好了很多的页面样式,你如果需要使用,只需要下载对应的文件,之后直接cv拷贝即可在使用bootstrap的时候所有的页面样式都只需要通过class来调节......
  • JQuery操作
    JQuery操作简介1.使用jQuery的好处1.加载速度更快2.选择器更多也更好用3.支持Ajax4.兼容更多浏览器5.代码量大大减少2.如何加载jQuery1.......
  • 关于JQuery validate表单校验插件对级联下拉框的校验问题
         今天在使用JQueryvalidate表单校验插件时,遇见了一个非常诡异的问题了。在此记录一下:     问题描述:               ......
  • jQuery、Bootstrap页面框架
    今日内容概要jQuery查找标签jQuery节点操作jQuery事件绑定Bootstrap页面框架今日内容详细jQuery查找标签1.基本选择器 $('#d1') id选择器$('.c1') clas......
  • jQuery查找标签、节点操作、事件绑定、Bootstrap页面框架
    jQuery查找标签、节点操作、事件绑定、Bootstrap页面框架一、jQuery查找标签1.各种选择器1.基本选择器$('#id')id选择器$('.c1')类(cl......
  • Bootstrap页面框架
    Bootstrap页面框架Bootstrap页面框架是已经提前写好了一大堆css和js,我们只需要引入之后按照人家规定好的操作方式即可使用所有的样式和功能。Bootstrap链接:https://v3.b......