2018.11.16

jquery

在JQ中$(document.body)和这个$("body") 这两的区别在哪里?

 

JQuery中的text(),html()和val()区别

text() 方法方法设置或返回被选元素的文本内容

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>html方法</title>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
    <!--text() 方法返回或设置被选元素的文本内容,以及子代的内容。-->


    $(document).ready(function(){

    $("button").click(function(){
    <!--返回被选元素的值-->
    var value=$("button").text();
    alert(value);
<!--设置被选元素的值-->
    $("button").text("pppp");
    });
    });
    </script>
</head>
<body>
<button type="button">点击</button>
</body>
</html>

html() 方法返回或设置被选元素的内容 (inner HTML),包括标签内部

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>html方法</title>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
    <!--获取返回或者设置html元素的内容,包括标签-->
    $(document).ready(function(){

    $("button").click(function(){
    <!--返回内容-->
    var htmlStr=$("p").html();
    alert(htmlStr);
   <!--设置内容-->
    $("p").html("hello");
    });
    });
    </script>
</head>
<body>
<p>注意</p>
<button type="button">点击</button>
</body>
</html>

val() 方法返回或设置被选元素的值。以及子代元素的值,元素的值是通过 value 属性设置的。该方法大多用于 input 元素。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>html方法</title>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
    <!--val() 方法返回或设置被选元素的值。-->

    <!--元素的值是通过 value 属性设置的。该方法大多用于 input 元素。-->

    <!--如果该方法未设置参数,则返回被选元素的当前值-->
    $(document).ready(function(){

    $("button").click(function(){
    <!--返回被选元素的值-->
    var value=$("input").val();
    alert(value);
<!--设置被选元素的值-->
    $("input:text").val(function(index,oldvalue){
    return oldvalue.toUpperCase();

    });
    });
    });
    </script>
</head>
<body>
<p>name:<input type="text" name="user" value="pjh"/></p>
<button type="button">转换为大写</button>
</body>
</html>

Jquery 选择器大全

jQuery 选择器简介

      jQuery 选择器允许对 HTML 元素组或单个元素进行操作。

    jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它基于已经存在的 CSS 选择器,除此之外,它还有一些自定义的选择器。

    jQuery 中所有选择器都以美元符号开头:$()。

1 .基本选择器

$("#test")                    选择id值为test的元素,id值是唯一的所以返回单个元素。

    $("div")                      选择所有的div标签元素,返回div元素数组 

    $(".myclass")                 选择使用myclass类的css的所有元素 

    $("*")                        选取所有元素。

    $("#test,div,.myclass")        选取多个元素。

2.层次选择器

$("div span")             选取<div>里的所有<span>元素

    $("div >span")             选取<div>元素下元素名是<span>的子元素

    $("#one +div")             选取id为one的元素的下一个<div>同辈元素        等同于$("#one").next("div")

    $("#one~div")              选取id为one的元素的元素后面的所有<div>同辈元素    等同于$("#one").nextAll("div")
  
    $("#one").siblings("div")      获取id为one的元素的所有<div>同辈元素(不管前后)

    $("#one").prev("div")        获取id为one的元素的前面紧邻的同辈<div>元素

    所以 获取元素范围大小顺序依次为:

    $("#one").siblings("div")>$("#one~div")>$("#one +div")  或是

    $("#one").siblings("div")>$("#one").nextAll("div")>$("#one").next("div")

 

3.基本过滤选择器

$("div:first")                 选取所有<div>元素中第1个<div>元素

    $("div:last")                   选取所有<div>元素中最后一个<div>元素

    $("input:not(.myClass)")        选取class不是myClass的<input>元素 

    $("input:even")                 选取索引是偶数的<input>元素(索引从0开始) 

    $("input:odd")                  选取索引是基数的<input>元素(索引从0开始) 

    $("input:eq(2)")                选取索引等于2的<input>元素 

    $("input:gt(4)")                选取索引大于4的<input>元素

    $("input:lt(4)")                选取索引小于4的<input>元素

    $(":header")                    过滤掉所有标题元素,例如:h1、h2、h3等

    $("div:animated")               选取正在执行动画的<div>元素  

    $(":focus")                     选取当前获取焦点的元素

 

4.内容过滤选择器

$("div:contains('Name')")       选取所有<div>中含有'Name'文本的元素 
  
    $("div:empty")                  选取不包含子元素(包括文本元素)的<div>空元素 

    $("div:has(p)")                 选取所有含有<p>元素的<div>元素 

    $("div:parent")                 选取拥有子元素的(包括文本元素)<div>元素

 

5.可见性过滤选择器

  $("div:hidden")                 选取所有不可见的<div>元素 

    $("div:visible")                选取所有可见的<div>元素    

6.属性过滤选择器

$("div[id]")                  选取所有拥有属性id的元素

    $("input[name='test']")        选取所有的name属性等于'test'的<input>元素 
 
    $("input[name!='test']")      选取所有的name属性不等于'test'的<input>元素 
 
    $("input[name^='news']")        选取所有的name属性以'news'开头的<input>元素 

    $("input[name$='news']")        选取所有的name属性以'news'结尾的<input>元素 

    $("input[name*='news']")        选取所有的name属性包含'news'的<input>元素 

    $("div[title|='en']")           选取属性title等于'en'或以'en'为前缀(该字符串后跟一个连字符'-')的<div>元素

    $("div[title~='en']")           选取属性title用空格分隔的值中包含字符en的<div>元素

    $("div[id][title$='test']")     选取拥有属性id,并且属性title以'test'结束的<div>元素

 

8.表单对象属性过滤选择器

$("#form1 :enabled")             选取id为'form1'的表单内所有可用元素

    $("#form2 :disabled")            选取id为'form2'的表单内所有不可用元素 

    $("input :checked")              选取所有被选中的<input>元素 
  
    $("select option:selected")      选取所有的select 的子元素中被选中的元素

9.表单选择器

$(":input")                      选取所有<input>,<textarea>,<select> 和 <button>元素 

    $(":text")                      选取所有的单行文本框

    $(":password")                   选取所有的密码框 

    $(":radio")                      选取所有单的选框 

    $(":checkbox")                   选取所有的多选框 

    $(":submit")                     选取所有的提交按钮

    $(":image")                      选取所有的图像按钮 

    $(":reset")                      选取所有的重置按钮

    $(":button")                     选取所有的按钮 

    $(":file")                       选取所有的上传域

    $(":hidden")                     选取所有不可见元素

empty()与remove()区别:

其实empty()就是将元素内容置空。

比方这样的一个<p>name</p>这个时候,我们如果要替换内容,可以用$("p").empty(),和$("p").text("")类似。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>empty()</title>
<script src="jquery.js"></script>
<script>
$(document).ready(function(){
$("button").click(function () {
<!--使用empty()方法删除HTML元素的内容和所有子元素-->

    $("p").empty();
  });
  });
</script>
</head>
<body>
<p>
    欢迎访问 <a href="http://jquery.com/">jQuery官网</a>
</p>
<button>删除</button>
</body>
</html>

如果$("label").remove().就是将这个label元素直接移除了。那么审查元素的时候,就个元素就不存在了。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>remove()</title>
    <!--选择器是可选参数,指定删除匹配的HTML元素。如果不指定参数,则会删除jQuery对象对应的所有HTML元素。-->
    <script src="jquery.js"></script>
        <script>
$(document).ready(function(){
$("button").click(function () {
    $("p").remove();
  });
  });
</script>
    </head>
<input>
<p>欢迎访问 <a href="http://jquery.com/">jQuery官网</a></p>

<button>删除</button>
</body>
</html>


具体可以打开F12

左方为empty()效果,<P></P>仍然存在只是内容消失了,右方为remove()效果,<P></P>这个标签消失了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 支持向量机非线性回归通用MATLAB程序解析 #### 一、概述 本文将详细介绍一个基于MATLAB的支持向量机(SVM)非线性回归的通用程序。该程序采用支持向量机方法来实现数据的非线性回归,并通过不同的核函数设置来适应不同类型的数据分布。此外,该程序还提供了数据预处理的方法,使得用户能够更加方便地应用此程序解决实际问题。 #### 二、核心功能与原理 ##### 1. 支持向量机(SVM) 支持向量机是一种监督学习模型,主要用于分类和回归分析。对于非线性回归任务,SVM通过引入核技巧(kernel trick)将原始低维空间中的非线性问题转换为高维空间中的线性问题,从而实现有效的非线性建模。 ##### 2. 核函数 核函数的选择直接影响到模型的性能。本程序内置了三种常用的核函数: - **线性核函数**:`K(x, y) = x'y` - **多项式核函数**:`K(x, y) = (x'y + 1)^d` - **径向基函数(RBF)**:`K(x, y) = exp(-γ|x - y|^2)` 其中RBF核函数被广泛应用于非线性问题中,因为它可以处理非常复杂的非线性关系。本程序默认使用的是RBF核函数,参数`D`用于控制高斯核函数的宽度。 ##### 3. 数据预处理 虽然程序本身没有直接涉及数据预处理的过程,但在实际应用中,对数据进行适当的预处理是非常重要的。常见的预处理步骤包括归一化、缺失值处理等。 ##### 4. 模型参数 - **Epsilon**: ε-insensitive loss function的ε值,控制回归带宽。 - **C**: 松弛变量的惩罚系数,控制模型复杂度与过拟合的风险之间的平衡。 #### 三、程序实现细节 ##### 1. 函数输入与输出 - **输入**: - `X`: 输入特征矩阵,维度为(n, l),其中n是特征数量,l是样本数量。 - `Y`: 目标值向量,长度为l。 - `Epsilon`: 回归带宽。 - `C`: 松弛变量的惩罚系数。 - `D`: RBF核函数的参数。 - **输出**: - `Alpha1`: 正的拉格朗日乘子向量。 - `Alpha2`: 负的拉格朗日乘子向量。 - `Alpha`: 拉格朗日乘子向量。 - `Flag`: 标记向量,表示每个样本的类型。 - `B`: 偏置项。 ##### 2. 核心代码解析 程序首先计算所有样本间的核矩阵`K`,然后构建二次规划问题并求解得到拉格朗日乘子向量。根据拉格朗日乘子的值确定支持向量,并计算偏置项`B`。 - **核矩阵计算**:采用RBF核函数,通过`exp(-(sum((xi-xj).^2)/D))`计算任意两个样本之间的相似度。 - **二次规划**:构建目标函数和约束条件,使用`quadprog`函数求解最小化问题。 - **支持向量识别**:根据拉格朗日乘子的大小判断每个样本是否为支持向量,并据此计算偏置项`B`。 #### 四、程序扩展与优化 - **多核函数支持**:可以通过增加更多的核函数选项,提高程序的灵活性。 - **自动调参**:实现参数自动选择的功能,例如通过交叉验证选择最优的`Epsilon`和`C`值。 - **并行计算**:利用MATLAB的并行计算工具箱加速计算过程,特别是当样本量很大时。 #### 五、应用场景 该程序适用于需要进行非线性回归预测的场景,如经济预测、天气预报等领域。通过调整核函数和参数,可以有效应对各种类型的非线性问题。 ### 总结 本程序提供了一个支持向量机非线性回归的完整实现框架,通过灵活的核函数设置和参数调整,能够有效地处理非线性问题。对于需要进行回归预测的应用场景,这是一个非常实用且强大的工具。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值