JS学习一

nextSibling:返回元素节点之后的兄弟节点(包括文本节点、注释节点即回车、换行、空格、文本等等)
nextElementSibling:只返回元素节点之后的兄弟元素节点(不包括文本节点、注释节点)
previousSibling:前一个同胞节点

示例:

//初始化
$(function(){
    $("#rads + button").click(function () {
        for(var key in radioData) {//循环radioData
            $("#rads input").eq(key).val(radioData[key].id);//将radioData的ID赋值给input的value值
            $(".jqTransformRadioWrapper")[key].nextSibling.nodeValue = radioData[key].name;//将$(".jqTransformRadioWrapper")[key]后面的文本替换成radioData[key].name
        }
    });

});
radioData:
var radioData = [
{id:"1",name:"紧急"},
{id:"2",name:"重要"},
{id:"3",name:"普通"},
{id:"4",name:"一般"}
];

以上两个代码段分属同一文件夹下的不同js,可以在另一个js里面直接调用radioData的值

radio和CheckBox等获取选中内容,使用.checked:

//显示选中内容
$(function () {
    $("#rads + button + button").click(function () {
        //var radios = document.getElementsByName("question");
        var radios = $("#rads input[name=question]");//获取所有的input节点
        for (var i=0; i <radios.length; i ++) {
            if (radios[i].checked) {//如果单选框被选中,显示值和后面的文本
                alert(radios[i].value + "," + $(".jqTransformRadioWrapper")[i].nextSibling.nodeValue);
                break;
            }
        }
    });
})

radio和CheckBox等设置属性和选中:

//选中第n个选项
$(function () {
    $("#rads + button + button + button").click(function () {
        var inputs = $("#rads input");//获取所有input标签
        inputs[0].previousSibling.setAttribute("class","jqTransformRadio");//将第一个radio样式的默认选择去掉
        inputs[1].previousSibling.setAttribute("class","jqTransformRadio jqTransformChecked");//将第二个radio样式设为默认选择
        inputs[2].previousSibling.setAttribute("class","jqTransformRadio");//将第三个radio样式设为不默认
        inputs[1].checked = true;
    });
})

获取某个元素的第n个子元素的文本值:

$(function () {
    $(".multipleChoice + button").click(function () {
        for (var i=0; i<radioData.length; i++) {
            //$(".multipleXiala li").eq(i+1).children("span")[1].innerText:选择li下面的第二个span子元素的文本内容
            $(".multipleXiala li input").eq(i+1).val(radioData[i].id);
            $(".multipleXiala li").eq(i+1).children("span")[1].innerText = radioData[i].name;
        }
    });
})

设置前一个同胞节点的属性,使用previousSibling:

$(function () {
    $(".inputClear").click(function () {
        //将所有input及其上一个兄弟元素设为不选中
        var inputs = $(".multipleXiala li input[type=checkbox]");//获取所有input标签
        for (var i=0; i <inputs.length; i++) {
            inputs[i].previousSibling.setAttribute("class","jqTransformCheckbox");
            inputs[i].checked = false;
        }
        $(".multipleInput").html("");
    });
})

页面初始化:

即在页面被加载时,需要被实例化的变量或执行的方法

$(function(){
	/**初始化数据域下拉框*/
	initDomainSelect();
	
	/**初始化radio*/
	initRadio(gSysJson);
	
	/**初始化滑块组件*/
	initRanger();
	
	/**初始化列表*/
	initList();

	/**初始化实时搜索**/
	initRealTimeSearch();

	/**列表查询**/
	doSearchList();

	/**自适应*/
	setWH();
	
});

然后在下面一一实现上面需要被初始化的方法:

function initDomainSelect() {...}
function initRadio() {...}
....

 fadeOut():实现某个模块淡出效果

$("").fadeOut(speed,callback);

参数:

speed:可选。规定元素从可见到隐藏的速度。默认为 "normal"。其他值:毫秒 (比如 1500);"slow";"normal";"fast"

callback:可选。fadeOut 函数执行完之后,要执行的函数。除非设置了 speed 参数,否则不能设置该参数。

promise():要求js一定要执行的方法体,无法取消,是异步执行

$( "" ).promise().done(function() {
		xxx
	});

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值