xml地图|网站地图|网站标签 [设为首页] [加入收藏]

正规赌博十大app排名

当前位置:网上十大正规赌博平台 > 正规赌博十大app排名 > 解析页面加载与js函数的执行,jQuery取得select选择

解析页面加载与js函数的执行,jQuery取得select选择

来源:http://www.nb-machinery.com 作者:网上十大正规赌博平台 时间:2019-08-01 12:58

主要内容: 1、分析JavaScript的词法作用域的含义

首先,页面加载顺序:
解析HTML结构。
加载外部脚本和样式表文件。
解析并执行脚本代码。
构造HTML DOM模型。
加载图片等外部文件。
页面加载完毕。

获取select :
获取select 选中的 text :
$("#ddlregtype").find("option:selected").text();

2、解析变量的作用域链

也就是:
html → head → title → #text(网页标题) → style → 加载样式 → 解析样式 → link → 加载外部样式表文件 → 解析外部样式表 → script → 加载外部脚本文件 → 解析外部脚本文件 → 执行外部脚本 → body → div → script → 加载脚本 → 解析脚本 → 执行脚本 → img → script → 加载脚本 → 解析脚本 → 执行脚本 → 加载外部图像文件 → 页面初始化完毕。

获取select选中的 value:
$("#ddlregtype ").val();

3、变量名提升时什么

JS 的初始化装载。

获取select选中的索引:
$("#ddlregtype ").get(0).selectedindex;

最近在传智播客讲解JavaScript的课程,有不少朋友觉得JavaScript是如此的简单,但是又如此的不知如何使用,因此我准备了一些内容给大家分享一下.
这个系列主要讲解JavaScript的高级部分的内容,包括作用域链、闭包、函数调用模式、原型以及面向对象的一些东西. 在这里不包含JavaScript的基本语法,如果需要了解基础的同学可以到. 好了,废话不多说,直接进入我们的正题.

onload 不是在 document 加载完成的时候调用的, 而是在页面所有元素 (包括图片等) 全部加载完成才会调用.  如果页面上有尺寸很大的图片, 下载需要很长时间, 那么脚本就一直不能被初始化, 直到图片装载完成, 严重时用户体验会受到很大影响.但是,window.onload 也并非是一无用处,很多情况下一些B/S软件需要页面全部加载后才提供用户相关功能,这样 window.onload 就可以提供一种“加载中”的功能,又或者是页面内容很少,完全无需 document.ready(); 根据各种情况,应该合理的使用 onload 和 ready。

设置select:
设置select 选中的索引:
$("#ddlregtype ").get(0).selectedindex=index;//index为索引值

一、关于块级作用域 说到JavaScript的变量作用域,与咱们平时使用的类C语言不同.
例如C#中下面代码:

使用onload加载:

设置select 选中的value:

复制代码 代码如下:

复制代码 代码如下:

复制代码 代码如下:

static void Main(string[] args)
{
 if(true)
 {
  int num = 10;
 }
 System.Console.WriteLine(num);
}

window.onload=function(){
            var currentRenderer = 'javascript';           
            FusionCharts.setCurrentRenderer(currentRenderer);
            var chartObj = new FusionCharts({
                swfUrl: "Pie3D.swf",
                width: "290", height: "210",
                id: 'sampleChart',
                dataSource: "/ucenter/seo/new_seo_tool.php?check=xml&val={{pre_num}}",
                dataFormat: FusionChartsDataFormats.XMLURL,         
                renderAt: 'chart1div'
            }).render();
            }

$("#ddlregtype ").attr("value","normal“);
$("#ddlregtype ").val("normal");
$("#ddlregtype ").get(0).value = value;

这段代码如果进行编译,是无法通过的,因为"当前上下文中不存在名称num". 因为这里
变量的作用域是由花括号限定的,称为块级作用域.

ready 在 W3C 中有个叫 DOMContentLoaded 的事件,它会在 DOM (文档对象模型) 被加载完成的时候触发.

设置select 选中的text:

在块级作用域下,所有的变量都在定义的花括号内,从定义开始到花括号结束这个
范围内可以使用. 出了这个范围就无法访问. 也就是说代码

方法一:

复制代码 代码如下:

复制代码 代码如下:

复制代码 代码如下:

var count=$("#ddlregtype option").length;
for(var i=0;i<count;i )
{ if($("#ddlregtype ").get(0).options[i].text == text)
{
$("#ddlregtype ").get(0).options[i].selected = true;
break;
}
}
$("#select_id option[text='jquery']").attr("selected", true);

if(true)
{
 int num = 10;
 System.Console.WriteLine(num);
}

类似于Jquery的$(function(){...}) $(document).ready(function(){...})
(function () {
var ie = !!(window.attachEvent && !window.opera);
var wk = /webkit/(d )/i.test(navigator.userAgent) && (RegExp.$1 < 525);
var fn = [];
var run = function () { for (var i = 0; i < fn.length; i ) fn[i](); };
var d = document;
d.ready = function (f) {
if (!ie && !wk && d.addEventListener)
return d.addEventListener('DOMContentLoaded', f, false);
if (fn.push(f) > 1) return;
if (ie)
(function () {
try { d.documentElement.doScroll('left'); run(); }
catch (err) { setTimeout(arguments.callee, 0); }
})();
else if (wk)
var t = setInterval(function () {
if (/^(loaded|complete)$/.test(d.readyState))
clearInterval(t), run();
}, 0);
};
})();

设置select option项:

这里可以访问,因为变量的定义与使用在同一个花括号内.

调用时:
document.ready(function(){
    alert('ok');
 }

复制代码 代码如下:

但是在JavaScript中就不一样,JavaScript中没有块级作用域的概念.

方法二:

$("#select_id").append("<option value='value'>text</option>"); //添加一项option
$("#select_id").prepend("<option value='0'>请选择</option>"); //在前面插入一项option
$("#select_id option:last").remove(); //删除索引值最大的option
$("#select_id option[index='0']").remove();//删除索引值为0的option
$("#select_id option[value='3']").remove(); //删除值为3的option
$("#select_id option[text='4']").remove(); //删除text值为4的option

二、JavaScript中的作用域 在JavaScript中,下面代码:

复制代码 代码如下:

清空 select:

复制代码 代码如下:

/如果支持 W3C DOM2, 则使用 W3C 方法
if (document.addEventListener){
    document.addEventListener("DOMContentLoaded", te, false);
}
else if (/MSIE/i.test(navigator.userAgent)){/如果是 IE 浏览器(不支持)
    /创建一个 script 标签, 该标签有 defer 属性, 当 document 加载完毕时才会被载入
    document.write("
    var script = document.getElementByIdx_x("__ie_onload");
    /如果文档确实装载完毕, 调用初始化方法
    script.onreadystatechange = function() {
        if (this.readyState == 'complete') {
        te();
        }
    }
}
else if (/WebKit/i.test(navigator.userAgent)) {/如果是 Safari 浏览器(不支持)
/创建定时器, 每 0.01 秒检验一次, 如果文档装载完毕则调用初始化方法
var _timer = setInterval( function() {
    if (/loaded|complete/.test(document.readyState)) {
        clearInterval(_timer);
        te();
    }
    }, 10);
}
else {/如果以上皆不是, 使用最坏的方法 (本例中, Opera 7 将会跑到这里来)
    window.onload = function(e) {
        te();
    }
}
function te(){
    alert('ok');
}

$("#ddlregtype ").empty();

if(true) {
 var num = 10;
}
alert(num);

您可能感兴趣的文章:

  • jquery $(document).ready() 与window.onload的区别
  • JQuery onload、ready概念介绍及使用方法
  • jquery的$(document).ready()和onload的加载顺序
  • jquery中的$(document).ready()与window.onload的区别
  • 一张表格告诉你windows.onload()与$(document).ready()的区别
  • JQuery的ready函数与JS的onload的区别详解
  • 浅析document.ready和window.onload的区别讲解
  • jQuery中document与window以及load与ready 区别详解
  • JQ中$(window).load和$(document).ready区别与执行顺序

工作需要,要获得两个表单中的值。如图:

运行的结果是弹窗10. 那么在JavaScript中变量的作用范围是怎么限定的呢?

如何获得从左边选择框添加到右边选择框中的值?我想了想用网页特效可以获得,这里用了比较流行的jquery。
js代码如下:

2.1 函数限定变量作用域 在JavaScript中,只有函数可以限定一个变量的作用范围. 什么意思呢?
就是说,在JavaScript中,在函数里面定义的变量,可以在函数里面被访问,但是在函数外
无法访问. 看如下代码:

复制代码 代码如下:

复制代码 代码如下:

//获取所有属性值 var item = $("#select1").val();
$(function(){
$('#select1').each( //获得select1的所有值
function(){
$('button').click(function(){
alert($('#select2').val()); //获得select2中的select1值
});
});
})
</script>

var func = function() {
 var num = 10;
};
try {
 alert(num);
} catch ( e ) {
 alert( e );
}

值得注意的是,不能直接写成

这段代码运行时,会抛出一个异常,变量num没有定义. 也就是说,定义在函数中的变量无法
在函数外使用,当然在函数内可以随意的使用, 即使在赋值之前. 看下面代码:

复制代码 代码如下:

复制代码 代码如下:

$(function(){
$('#select2').each( //获得select1的所有值,因为前面讲选项从左边添加到右边,jquery其实并没有真正将值从左边传到右边。
function(){
$('button').click(function(){
alert($(this).val()); //获得select2中的select1值
});
});
})

var func = function() {
 alert(num);
 var num = 10;
 alert(num);
};
try {
 func();
} catch ( e ) {
 alert( e );
}

html:

这段代码运行后,不会抛出错误,弹窗两次,分别是 undefined 和 10(至于为什么,下文解释).

复制代码 代码如下:

本文由网上十大正规赌博平台发布于正规赌博十大app排名,转载请注明出处:解析页面加载与js函数的执行,jQuery取得select选择

关键词: mg娱乐游戏