亚洲高清vr播放在线观看,欧美亚洲精品免费,欧美日韩天堂在线视频,午夜福利小视频

      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 電腦硬件知識 > 鍵盤鼠標(biāo) > jst實現(xiàn)鼠標(biāo)拖動選擇功能

      jst實現(xiàn)鼠標(biāo)拖動選擇功能

      時間: 沈迪豪908 分享

      jst實現(xiàn)鼠標(biāo)拖動選擇功能

        學(xué)習(xí)前端的同學(xué)你們知道怎么用JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能嗎?不知道的話跟著學(xué)習(xí)啦小編一起來學(xué)習(xí)用JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能。

        JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能的具體方法

        代碼如下:

        <style><!--

        body{padding-top:50px;padding-left:100px;padding-right:150px;}

        .fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid #cccccc;margin-right:10px;margin-bottom:10px;}

        .seled{border:1px solid #ff0000;background-color:#D6DFF7;}

        --></style>

        <script type="text/javascript">// <![CDATA[

        Array.prototype.remove = function( item ){

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

        if( item == this[i] )

        break;

        }

        if( i == this.length )

        return;

        for( var j = i ; j < this.length - 1 ; j++ ){

        this[ j ] = this[ j + 1 ];

        }

        this.length--;

        }

        String.prototype.replaceAll = function (AFindText,ARepText){ raRegExp = new RegExp(AFindText,"g"); return this.replace(raRegExp,ARepText);}

        function getAllChildren(e) {

        return e.all ? e.all : e.getElementsByTagName('*');

        }

        document.getElementsBySelector = function(selector) {

        if (!document.getElementsByTagName) {

        return new Array();

        }

        var tokens = selector.split(' ');

        var currentContext = new Array(document);

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

        token = tokens[i].replace(/^s+/,'').replace(/s+$/,'');;

        if (token.indexOf('#') > -1) {

        var bits = token.split('#');

        var tagName = bits[0];

        var id = bits[1];

        var element = document.getElementById(id);

        if (tagName && element.nodeName.toLowerCase() != tagName) {

        return new Array();

        }

        currentContext = new Array(element);

        continue;

        }

        if (token.indexOf('.') > -1) {

        var bits = token.split('.');

        var tagName = bits[0];

        var className = bits[1];

        if (!tagName) {

        tagName = '*';

        }

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements;

        if (tagName == '*') {

        elements = getAllChildren(currentContext[h]);

        } else {

        elements = currentContext[h].getElementsByTagName(tagName);

        }

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        for (var k = 0; k < found.length; k++) {

        if (found[k].className && found[k].className.match(new RegExp('b'+className+'b'))) {

        currentContext[currentContextIndex++] = found[k];

        }

        }

        continue;

        }

        if (token.match(/^(w*)[(w+)([=~|^$*]?)=?"?([^]"]*)"?]$/)) {

        var tagName = RegExp. class="main">

      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 電腦硬件知識 > 鍵盤鼠標(biāo) > jst實現(xiàn)鼠標(biāo)拖動選擇功能

      jst實現(xiàn)鼠標(biāo)拖動選擇功能

      時間: 沈迪豪908 分享

        var attrName = RegExp.

      jst實現(xiàn)鼠標(biāo)拖動選擇功能

        學(xué)習(xí)前端的同學(xué)你們知道怎么用JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能嗎?不知道的話跟著學(xué)習(xí)啦小編一起來學(xué)習(xí)用JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能。

        JavaScript簡單實現(xiàn)鼠標(biāo)拖動選擇功能的具體方法

        代碼如下:

        <style><!--

        body{padding-top:50px;padding-left:100px;padding-right:150px;}

        .fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid #cccccc;margin-right:10px;margin-bottom:10px;}

        .seled{border:1px solid #ff0000;background-color:#D6DFF7;}

        --></style>

        <script type="text/javascript">// <![CDATA[

        Array.prototype.remove = function( item ){

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

        if( item == this[i] )

        break;

        }

        if( i == this.length )

        return;

        for( var j = i ; j < this.length - 1 ; j++ ){

        this[ j ] = this[ j + 1 ];

        }

        this.length--;

        }

        String.prototype.replaceAll = function (AFindText,ARepText){ raRegExp = new RegExp(AFindText,"g"); return this.replace(raRegExp,ARepText);}

        function getAllChildren(e) {

        return e.all ? e.all : e.getElementsByTagName('*');

        }

        document.getElementsBySelector = function(selector) {

        if (!document.getElementsByTagName) {

        return new Array();

        }

        var tokens = selector.split(' ');

        var currentContext = new Array(document);

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

        token = tokens[i].replace(/^s+/,'').replace(/s+$/,'');;

        if (token.indexOf('#') > -1) {

        var bits = token.split('#');

        var tagName = bits[0];

        var id = bits[1];

        var element = document.getElementById(id);

        if (tagName && element.nodeName.toLowerCase() != tagName) {

        return new Array();

        }

        currentContext = new Array(element);

        continue;

        }

        if (token.indexOf('.') > -1) {

        var bits = token.split('.');

        var tagName = bits[0];

        var className = bits[1];

        if (!tagName) {

        tagName = '*';

        }

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements;

        if (tagName == '*') {

        elements = getAllChildren(currentContext[h]);

        } else {

        elements = currentContext[h].getElementsByTagName(tagName);

        }

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        for (var k = 0; k < found.length; k++) {

        if (found[k].className && found[k].className.match(new RegExp('b'+className+'b'))) {

        currentContext[currentContextIndex++] = found[k];

        }

        }

        continue;

        }

        if (token.match(/^(w*)[(w+)([=~|^$*]?)=?"?([^]"]*)"?]$/)) {

        var tagName = RegExp.$1;

        var attrName = RegExp.$2;

        var attrOperator = RegExp.$3;

        var attrValue = RegExp.$4;

        if (!tagName) {

        tagName = '*';

        }

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements;

        if (tagName == '*') {

        elements = getAllChildren(currentContext[h]);

        } else {

        elements = currentContext[h].getElementsByTagName(tagName);

        }

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        var checkFunction;

        switch (attrOperator) {

        case '=':

        checkFunction = function(e) { return (e.getAttribute(attrName) == attrValue); };

        break;

        case '~':

        checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('b'+attrValue+'b'))); };

        break;

        case '|':

        checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('^'+attrValue+'-?'))); };

        break;

        case '^':

        checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) == 0); };

        break;

        case '$':

        checkFunction = function(e) { return (e.getAttribute(attrName).lastIndexOf(attrValue) == e.getAttribute(attrName).length - attrValue.length); };

        break;

        case '*':

        checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) > -1); };

        break;

        default :

        checkFunction = function(e) { return e.getAttribute(attrName); };

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        for (var k = 0; k < found.length; k++) {

        if (checkFunction(found[k])) {

        currentContext[currentContextIndex++] = found[k];

        }

        }

        continue;

        }

        tagName = token;

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements = currentContext[h].getElementsByTagName(tagName);

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = found;

        }

        return currentContext;

        }

        function addEvent(eventType,eventFunc,eventObj){

        eventObj = eventObj || document;

        if(window.attachEvent) eventObj.attachEvent("on"+eventType,eventFunc);

        if(window.addEventListener) eventObj.addEventListener(eventType,eventFunc,false);

        }

        function clearEventBubble(evt){

        evt = evt || window.event;

        if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble = true;

        if (evt.preventDefault) evt.preventDefault(); else evt.returnValue = false;

        }

        function posXY(event){

        event = event || window.event;

        var posX = event.pageX || (event.clientX +

        (document.documentElement.scrollLeft || document.body.scrollLeft));

        var posY = event.pageY || (event.clientY +

        (document.documentElement.scrollTop || document.body.scrollTop));

        return {x:posX, y:posY};

        }

        var _selectedRegions = [];

        function RegionSelect(selRegionProp){

        this.regions =[];

        var _regions = document.getElementsBySelector(selRegionProp["region"]);

        if(_regions && _regions.length > 0){

        var _self = this;

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

        _regions[i].onmousedown = function(){

        var evt = window.event || arguments[0];

        if(!evt.shiftKey && !evt.ctrlKey){

        // 清空所有select樣式

        _self.clearSelections(_regions);

        this.className += " "+_self.selectedClass;

        // 清空selected數(shù)組,并加入當(dāng)前select中的元素

        _selectedRegions = [];

        _selectedRegions.push(this);

        }else{

        if(this.className.indexOf(_self.selectedClass) == -1){

        this.className += " "+_self.selectedClass;

        _selectedRegions.push(this);

        }else{

        this.className = this.className.replaceAll(_self.selectedClass,"");

        _selectedRegions.remove(this);

        }

        }

        clearEventBubble(evt);

        }

        this.regions.push(_regions[i]);

        }

        }

        this.selectedClass = selRegionProp["selectedClass"];

        this.selectedRegion = [];

        this.selectDiv = null;

        this.startX = null;

        this.startY = null;

        }

        RegionSelect.prototype.select = function(){

        var _self = this;

        addEvent("mousedown",function(){

        var evt = window.event || arguments[0];

        _self.onBeforeSelect(evt);

        clearEventBubble(evt);

        },document);

        addEvent("mousemove",function(){

        var evt = window.event || arguments[0];

        _self.onSelect(evt);

        clearEventBubble(evt);

        },document);

        addEvent("mouseup",function(){

        _self.onEnd();

        },document);

        }

        RegionSelect.prototype.onBeforeSelect = function(evt){

        if(!document.getElementById("selContainer")){

        this.selectDiv = document.createElement("div");

        this.selectDiv.style.cssText = "position:absolute;width:0px;height:0px;font-size:0px;margin:0px;padding:0px;border:1px dashed #0099FF;background-color:#C3D5ED;z-index:1000;filter:alpha(opacity:60);opacity:0.6;display:none;";

        this.selectDiv.id = "selContainer";

        document.body.appendChild(this.selectDiv);

        }else{

        this.selectDiv = document.getElementById("selContainer");

        }

        this.startX = posXY(evt).x;

        this.startY = posXY(evt).y;

        this.isSelect = true;

        }

        RegionSelect.prototype.onSelect = function(evt){

        var _self = this;

        if(_self.isSelect){

        if(_self.selectDiv.style.display == "none") _self.selectDiv.style.display = "";

        var posX = posXY(evt).x;

        var poxY = posXY(evt).y;

        _self.selectDiv.style.left = Math.min(posX, this.startX);

        _self.selectDiv.style.top = Math.min(poxY, this.startY);

        _self.selectDiv.style.width = Math.abs(posX - this.startX);

        _self.selectDiv.style.height = Math.abs(poxY - this.startY);

        var regionList = _self.regions;

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

        var r = regionList[i], sr = _self.innerRegion(_self.selectDiv,r);

        if(sr && r.className.indexOf(_self.selectedClass) == -1){

        r.className = r.className + " "+_self.selectedClass;

        _selectedRegions.push(r);

        }else if(!sr && r.className.indexOf(_self.selectedClass) != -1){

        r.className = r.className.replaceAll(_self.selectedClass,"");

        _selectedRegions.remove(r);

        }

        }

        }

        }

        RegionSelect.prototype.onEnd = function(){

        if(this.selectDiv){

        this.selectDiv.style.display = "none";

        }

        this.isSelect = false;

        //_selectedRegions = this.selectedRegion;

        }

        // 判斷一個區(qū)域是否在選擇區(qū)內(nèi)

        RegionSelect.prototype.innerRegion = function(selDiv, region){

        var s_top = parseInt(selDiv.style.top);

        var s_left = parseInt(selDiv.style.left);

        var s_right = s_left + parseInt(selDiv.offsetWidth);

        var s_bottom = s_top + parseInt(selDiv.offsetHeight);

        var r_top = parseInt(region.offsetTop);

        var r_left = parseInt(region.offsetLeft);

        var r_right = r_left + parseInt(region.offsetWidth);

        var r_bottom = r_top + parseInt(region.offsetHeight);

        var t = Math.max(s_top, r_top);

        var r = Math.min(s_right, r_right);

        var b = Math.min(s_bottom, r_bottom);

        var l = Math.max(s_left, r_left);

        if (b > t+5 && r > l+5) {

        return region;

        } else {

        return null;

        }

        }

        RegionSelect.prototype.clearSelections = function(regions){

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

        regions[i].className = regions[i].className.replaceAll(this.selectedClass,"");

        }

        }

        function getSelectedRegions(){

        return _selectedRegions;

        }

        function showSelDiv(){

        var selInfo = "";

        var arr = getSelectedRegions();

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

        selInfo += arr[i].innerHTML+"n";

        }

        alert("共選擇 "+arr.length+" 個文件,分別是:n"+selInfo);

        }

        // ]]></script>

        <p><button onclick="showSelDiv();">getRegions</button></p>

        <div class="fileDiv">file1</div>

        <div class="fileDiv">file2</div>

        <div class="fileDiv">file3</div>

        <div class="fileDiv">file4</div>

        <div class="fileDiv">file5</div>

        <div class="fileDiv">file6</div>

        <div class="fileDiv">file7</div>

        <div class="fileDiv">file8</div>

        <div style="float: left; width: 100%;"><button onclick="showSelDiv();">getRegions</button></div>

        <script type="text/javascript">// <![CDATA[

        new RegionSelect({

        region:'div.fileDiv',

        selectedClass: 'seled'

        }).select();

        // ]]></script>

      猜你喜歡:

      1.html調(diào)用js方法

      2.id調(diào)用js方法

      3.怎么用js實現(xiàn)簡單鼠標(biāo)跟隨效果

      4.lol上單JS強勢來襲

      5.使用js實現(xiàn)鼠標(biāo)點擊變色

      6.js中構(gòu)造函數(shù)是什么

      7.JavaScript和JSP的區(qū)別

      ;

        var attrOperator = RegExp.;

        var attrValue = RegExp.;

        if (!tagName) {

        tagName = '*';

        }

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements;

        if (tagName == '*') {

        elements = getAllChildren(currentContext[h]);

        } else {

        elements = currentContext[h].getElementsByTagName(tagName);

        }

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        var checkFunction;

        switch (attrOperator) {

        case '=':

        checkFunction = function(e) { return (e.getAttribute(attrName) == attrValue); };

        break;

        case '~':

        checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('b'+attrValue+'b'))); };

        break;

        case '|':

        checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('^'+attrValue+'-?'))); };

        break;

        case '^':

        checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) == 0); };

        break;

        case '$':

        checkFunction = function(e) { return (e.getAttribute(attrName).lastIndexOf(attrValue) == e.getAttribute(attrName).length - attrValue.length); };

        break;

        case '*':

        checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) > -1); };

        break;

        default :

        checkFunction = function(e) { return e.getAttribute(attrName); };

        }

        currentContext = new Array;

        var currentContextIndex = 0;

        for (var k = 0; k < found.length; k++) {

        if (checkFunction(found[k])) {

        currentContext[currentContextIndex++] = found[k];

        }

        }

        continue;

        }

        tagName = token;

        var found = new Array;

        var foundCount = 0;

        for (var h = 0; h < currentContext.length; h++) {

        var elements = currentContext[h].getElementsByTagName(tagName);

        for (var j = 0; j < elements.length; j++) {

        found[foundCount++] = elements[j];

        }

        }

        currentContext = found;

        }

        return currentContext;

        }

        function addEvent(eventType,eventFunc,eventObj){

        eventObj = eventObj || document;

        if(window.attachEvent) eventObj.attachEvent("on"+eventType,eventFunc);

        if(window.addEventListener) eventObj.addEventListener(eventType,eventFunc,false);

        }

        function clearEventBubble(evt){

        evt = evt || window.event;

        if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble = true;

        if (evt.preventDefault) evt.preventDefault(); else evt.returnValue = false;

        }

        function posXY(event){

        event = event || window.event;

        var posX = event.pageX || (event.clientX +

        (document.documentElement.scrollLeft || document.body.scrollLeft));

        var posY = event.pageY || (event.clientY +

        (document.documentElement.scrollTop || document.body.scrollTop));

        return {x:posX, y:posY};

        }

        var _selectedRegions = [];

        function RegionSelect(selRegionProp){

        this.regions =[];

        var _regions = document.getElementsBySelector(selRegionProp["region"]);

        if(_regions && _regions.length > 0){

        var _self = this;

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

        _regions[i].onmousedown = function(){

        var evt = window.event || arguments[0];

        if(!evt.shiftKey && !evt.ctrlKey){

        // 清空所有select樣式

        _self.clearSelections(_regions);

        this.className += " "+_self.selectedClass;

        // 清空selected數(shù)組,并加入當(dāng)前select中的元素

        _selectedRegions = [];

        _selectedRegions.push(this);

        }else{

        if(this.className.indexOf(_self.selectedClass) == -1){

        this.className += " "+_self.selectedClass;

        _selectedRegions.push(this);

        }else{

        this.className = this.className.replaceAll(_self.selectedClass,"");

        _selectedRegions.remove(this);

        }

        }

        clearEventBubble(evt);

        }

        this.regions.push(_regions[i]);

        }

        }

        this.selectedClass = selRegionProp["selectedClass"];

        this.selectedRegion = [];

        this.selectDiv = null;

        this.startX = null;

        this.startY = null;

        }

        RegionSelect.prototype.select = function(){

        var _self = this;

        addEvent("mousedown",function(){

        var evt = window.event || arguments[0];

        _self.onBeforeSelect(evt);

        clearEventBubble(evt);

        },document);

        addEvent("mousemove",function(){

        var evt = window.event || arguments[0];

        _self.onSelect(evt);

        clearEventBubble(evt);

        },document);

        addEvent("mouseup",function(){

        _self.onEnd();

        },document);

        }

        RegionSelect.prototype.onBeforeSelect = function(evt){

        if(!document.getElementById("selContainer")){

        this.selectDiv = document.createElement("div");

        this.selectDiv.style.cssText = "position:absolute;width:0px;height:0px;font-size:0px;margin:0px;padding:0px;border:1px dashed #0099FF;background-color:#C3D5ED;z-index:1000;filter:alpha(opacity:60);opacity:0.6;display:none;";

        this.selectDiv.id = "selContainer";

        document.body.appendChild(this.selectDiv);

        }else{

        this.selectDiv = document.getElementById("selContainer");

        }

        this.startX = posXY(evt).x;

        this.startY = posXY(evt).y;

        this.isSelect = true;

        }

        RegionSelect.prototype.onSelect = function(evt){

        var _self = this;

        if(_self.isSelect){

        if(_self.selectDiv.style.display == "none") _self.selectDiv.style.display = "";

        var posX = posXY(evt).x;

        var poxY = posXY(evt).y;

        _self.selectDiv.style.left = Math.min(posX, this.startX);

        _self.selectDiv.style.top = Math.min(poxY, this.startY);

        _self.selectDiv.style.width = Math.abs(posX - this.startX);

        _self.selectDiv.style.height = Math.abs(poxY - this.startY);

        var regionList = _self.regions;

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

        var r = regionList[i], sr = _self.innerRegion(_self.selectDiv,r);

        if(sr && r.className.indexOf(_self.selectedClass) == -1){

        r.className = r.className + " "+_self.selectedClass;

        _selectedRegions.push(r);

        }else if(!sr && r.className.indexOf(_self.selectedClass) != -1){

        r.className = r.className.replaceAll(_self.selectedClass,"");

        _selectedRegions.remove(r);

        }

        }

        }

        }

        RegionSelect.prototype.onEnd = function(){

        if(this.selectDiv){

        this.selectDiv.style.display = "none";

        }

        this.isSelect = false;

        //_selectedRegions = this.selectedRegion;

        }

        // 判斷一個區(qū)域是否在選擇區(qū)內(nèi)

        RegionSelect.prototype.innerRegion = function(selDiv, region){

        var s_top = parseInt(selDiv.style.top);

        var s_left = parseInt(selDiv.style.left);

        var s_right = s_left + parseInt(selDiv.offsetWidth);

        var s_bottom = s_top + parseInt(selDiv.offsetHeight);

        var r_top = parseInt(region.offsetTop);

        var r_left = parseInt(region.offsetLeft);

        var r_right = r_left + parseInt(region.offsetWidth);

        var r_bottom = r_top + parseInt(region.offsetHeight);

        var t = Math.max(s_top, r_top);

        var r = Math.min(s_right, r_right);

        var b = Math.min(s_bottom, r_bottom);

        var l = Math.max(s_left, r_left);

        if (b > t+5 && r > l+5) {

        return region;

        } else {

        return null;

        }

        }

        RegionSelect.prototype.clearSelections = function(regions){

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

        regions[i].className = regions[i].className.replaceAll(this.selectedClass,"");

        }

        }

        function getSelectedRegions(){

        return _selectedRegions;

        }

        function showSelDiv(){

        var selInfo = "";

        var arr = getSelectedRegions();

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

        selInfo += arr[i].innerHTML+"n";

        }

        alert("共選擇 "+arr.length+" 個文件,分別是:n"+selInfo);

        }

        // ]]></script>

        <p><button onclick="showSelDiv();">getRegions</button></p>

        <div class="fileDiv">file1</div>

        <div class="fileDiv">file2</div>

        <div class="fileDiv">file3</div>

        <div class="fileDiv">file4</div>

        <div class="fileDiv">file5</div>

        <div class="fileDiv">file6</div>

        <div class="fileDiv">file7</div>

        <div class="fileDiv">file8</div>

        <div style="float: left; width: 100%;"><button onclick="showSelDiv();">getRegions</button></div>

        <script type="text/javascript">// <![CDATA[

        new RegionSelect({

        region:'div.fileDiv',

        selectedClass: 'seled'

        }).select();

        // ]]></script>

      猜你喜歡:

      1.html調(diào)用js方法

      2.id調(diào)用js方法

      3.怎么用js實現(xiàn)簡單鼠標(biāo)跟隨效果

      4.lol上單JS強勢來襲

      5.使用js實現(xiàn)鼠標(biāo)點擊變色

      6.js中構(gòu)造函數(shù)是什么

      7.JavaScript和JSP的區(qū)別

      1952176