JavaScript随手笔记

创建以及定义对象

    var user=new Object();
        user.firstName="brad";
        user.lastName="daylery";
        user.getFullName=makeFullName;
        function makeFullName(){
            return this.firstName+" "+this.lastName;
        }
        var user2={'firstName':'test','lastName':'testName','getFullName':makeFullName};
        //定义对象模式
        function User(first,last){
            this.first=first;
            this.last=last;
            this.getFullName=function(){
                return this.first+" "+this.last;
            }
        }
            function Userp(first,last){
            this.first=first;
            this.last=last;
        }
        //使用原型对象创建,可以给已经创建的对象增加属性
        Userp.prototype={
            getFullName:function(){
                return this.first+" "+this.last;
            }
        }
        var user3=new User('userfirstName','userlastName');
        var user4=new Userp('userPro','userlastPro');
            document.write(user.getFullName()+user2.getFullName()+" "+user3.getFullName()+user4.getFullName());

对于函数来说,比如makeFullName:代表函数本事,makeFullName():代表函数返回值
DOM对象常用属性与方法


属性/方法        | 描述
parentNode | 父节点
childNode  |子节点
click()  |点击事件
innerHTML |访问位于元素开始标签和结束标签之间的内容文本.
outerHTML |访问html元素的全部文本,包括标签
value |html元素的value属性
id |html元素的id属性
class |html元素的class属性
style |访问html元素的css属性
getAttribute(attribute) |获取DOM对象的属性值;如obj.getAttribute(“name”),获取对象name属性
setAttribute(attribute) |设置DOM对象属性值;如设置对象和href属性:obj.setAttribute(“href”,”www.baidu.com”);
appendChild(object) |给DOM对象添加子元素;如有一个select元素obj;var o=new Option(“New”,1,false,false);select.appendChild(o);

JQuery常用属性与方法
方法        | 描述
html([newHtml])        |获取对象内部的html文本,如果有newhtml值,那么对象内部文本设置为newHTml
val([newval])       |获取对象的值或将其设置为可选参数newval的值
attr(attribute,[value])       |获取对象属性值获取设置属性值为可选参数value
addClass(class)       |在属性class中添加指定的值,从而将css规则应用于对象
css(property,[value])       |获取jQuery对象的css属性的值.如:设置所有对象

元素的css背景:$(“div”).css(“background-color”,”yellow”);
click([function])       |获取或设置jquery对象的onclick事件处理程序
height([value])       |获取或者设置DOM元素的高度,如果选取了可选值value,那么将设置对象的高度否则返回对象的高度
width([value])       |获取或者设置DOM的宽度
hide()       |隐藏Jquery对象表示的DOM
show()       |显示Jquery对象表示的DOM

判断对象为DOM对象还是Jquery对象
判断是否是jquery对象使用if(obj,jquery)判断对象是否具有jquery属性

判断是否是DOM对象使用if(obj,nodeType)判断对象是否具有nodeType属性

Jquery对象与DOM对象之间进行转换
使用get()方法返回jquery对象的js版本
var dom=jquery.get();
将DOM对象包装成Jquery对象:
var jquery=$(dom);
在js中访问Dom对象
1.根据ID查找DOM
var con=document.getElementById(“domID”);
2.根据类名查找DOM
var cons=document.getElementsByClassName(“domID”); //返回一个数组
3.根据标签名查看DOM
var cons=document.getElementsByTagName(“div”);
Jquery选择器

$(selector)
如$("#myElement"):获取id为myElement的DOM对象
对于特殊字符需要使用转义字符如id为:my.Element 获取为$("#my\\.Element")
1.基本选择器:
    $("*"):选择所有html元素
    $(".class"):根据类选择元素
    $("#id"):根据id选择元素
    $("element"):根据标签选择元素
    $("element1,element2...."):选择多个标签元素,使用逗号分隔
    $("element.class"):根据标签和类选择元素
2.属性选择器
    $([attr=value]):选择属性为value的元素
    例:
$("input[value=0]")选择value为0的所有<input>元素
    $([atrr*=value])   :选择属性包含value的属性
    例:
    $("p[class*=Content]") :选择class属性中包含Content的所有<p>元素
    $("attr^=value"):选择属性以value开头的元素
    $("imag[src^='icons\\/']"):选择img中src以icons开头的元素
    ....省略
    3.内容选择器:
    ....
    4.层次选择器:
    ...
    5.表单选择器
    ..
    6:可视性选择器
    ..
    7.筛选选择器
    ..
    jquery中each方法:
    .each(fuction):可以遍历jquery对象中的所有元素,并且对每个元素执行指定操作
    例:
    $("p").each(function(idx){    //idx为索引号
        $(this).html("this is a paragraph"+idx)
    })

    jquery中的map方法:方法map也迭代jquery中的每个元素,方法与each类似,但是存在一个不同是:.each返回他的jquery操作对象,而.map返回一个新的jquery对象,其中包含每次迭代返回值

js中有Screen对象,可以通过screen.width;screen.height来获取屏幕尺寸
获取可供网页操作的实际使用区域:
var pageWidth=window.innerWidth;
var pageHeight-window.innnerHeight;

动态添加网页元素
1.js添加网页元素

1.修改html内容
domObj.innerHTML+="<p>this is paragraph 1</p>";
domObj.innerHTML+="<p>this is paragraph 2</p>";
2.添加元素
var newp=createElement("p");
var newt=createTextNode("this is paragraph 1");
newp.append(newt);
domObj.appendChild(newp);

2.使用jquery添加网页元素

1.修改html内容
$("#myDiv").html("<p>this is paragraph 1</p>");
2.添加元素
var newp=$("<p></p>");
newp.html("this is paragraph 1");
$("#myDiv").append(newp);

删除网页中元素:
js通过removeChild方法
jquery通过remove方法;

使用jquery插入元素:

在文档第3个p元素后面插入一个新的段落
$("p:eq(2)").after($("<p>new paragragh </p>"))
在文档第3个p元素前面插入一个段落
$("p:eq(2)").before($("<p>new paragragh </p>"))

切换可视性:

Jquery方式:
例如:div
隐藏元素
    $("div").hide();   //隐藏之后不占据空间
    $("div").css("opacity","0");    //隐藏之后依旧占据空间
显示元素:
    $("div").show();
    $("div").css("opacity","1");

js方式:
将元素的style.display设置为none:隐藏元素
设置为"" :显示元素

window对象的一些属性与方法
alert():打开一个对话框,在其中显示一条消息和一个ok按钮
blur();让当前窗口失去焦点
close():关闭当前窗口
confirm();弹出一个确认对话框
open():打开一个新的浏览器窗口
prompt():提示用户输入框
setInterval():每隔n毫秒调用指定函数或者表达式
setTimeout():n毫秒之后调用指定函数或者表达式

var timerId=setTimeOut(myTimer,10000); //设置10秒后执行函数myTimer
clearTimeout(timerId); //清楚定时器
interval类似

location对象:location对象让我们访问浏览器的当前地址
location对象的属性与方法
hash |url锚点部分
host |url主机名与端口
href |整个url
pathname |url路径部分
port |服务器端口号
protocol |url协议部分
search |url查询部分
assign(url) |加载指定文档
reload() |重新加载当前文档
replace(url) |用新文档替换当前文档

history对象:
history.go(3):沿着历史记录向前前进3步
history.go(-n):沿着历史记录后退n步
history,back;返回上一步

jquery进行表单验证:

html:
<form id="myForm">
    <input type="text" name="emailField" />
</form>
Jquery:
$(doucument).ready(function(){
$("#myForm").validate({    //validate函数是检测表单的函数
    emailField:{
    required:true,
    email:true
    }
})

Jquery验证规则以及用途:

debug属性:数据将不会提交,在调试模式下验证表单  debug:true;
规则   |   用途
accept |要求元素包含特定的文件扩展名: accept:”jpg|png|gif”
creditcard |要求元素为有效信用卡号码:creditcard:true
date |要求元素内容为有效的日期 date:true
dateISO|要求元素内容为有效国际(ISO)日期 dateISO:true
digits |要求结果只包含数字 digits:true
email  |要求元素的值为有效的邮件地址email:true
equalTo  |要求元素的值与另一个元素的值相同: equalTo:”#passwordVerify”
min|要求包含的值不小于指定值:min:10
minlength|要求包含的字符不小于指定长度:minlength:8
max|要求包含的值不大于指定值max:100
maxlength|要求元素包含的字符串不长于指定长度maxlength:12
number|要求包含的是十进制数组  number:true
rangelength|要求包含的字符串长度在指定的范围内  rangelength:[3,9]
remote|执行http的ajax请求,调用服务器端脚本来验证输入值,该脚本返回json响应true或false.在get请求中,以查询字符串的方式将参数名和值传给服务器短脚本. remote:”valildation.php”
required|元素不能为空:required:true
range|元素包含的值必须在指定范围类range:[1,5]
url|元素的内容必须为有效的url

 <div>
    <form id="formA">
        <label>
            input a word
        </label>    
        <input type="text" name="word" title="请输入一个长度大于5的字符串">

    </form>
 </div>
 <script type="text/javascript">
     $("document").ready(function(){
         var vali=   $("#formA").validate({
             rules:{
                 word:{required:true,
                      minlength:5}
             }
         })
     })
    </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值