`
uule
  • 浏览: 6351757 次
  • 性别: Icon_minigender_1
  • 来自: 一片神奇的土地
社区版块
存档分类
最新评论

JS总结(二)

    博客分类:
  • JS
 
阅读更多

一、jquery动态移除/增加onclick属性

 

设置onclick属性:$("a").attr("onclick","test();");

删除onclick属性:$("a").removeAttr("onclick");

 

理论上上面的代码没问题,但实际上上面语句不执行也不报错,后来发现原因:

jquery 1.6之前的版本并不支持attr()方法对标签onclick属性的相关操作!

换句话说要使用attr()方法操作标签中的onclick属性必须使用jq库1.6或更新的库版本!

 

二、Select没有readonly属性,只有disabled属性,如何设置readonly

 onfocus="this.defaultIndex=this.selectedIndex;" onchange="this.selectedIndex=this.defaultIndex;" style="color:gray"

 

三、Js参数值中含有单引号或双引号解决办法

 

<script type="text/javascript">

function Display(LoginEmail, UserName, ID) {

        alert(LoginEmail);

    }

</script>

 

1.使用单引号传参:

<a href="javascript:Display('abc@abc.com','Aleax Xie','10101239393')">Test1</a>

 

如果其中一个参数有一个值含有单引号,那么这个方法会出错.

<a href="javascript:Display('abc@a'bc.com','Aleax Xie','10101239393')">Test1</a>

 

 改进: 有单引号的加上\', OK。

<a href="javascript:Display('abc@a\'bc.com','Aleax Xie','10101239393')">Test</a>

 

 

2.上面解决了单引号的问题,但如果值中有双引号又出现了问题

<a href="javascript:Display('abc@a\'bc".com','Aleax Xie','10101239393')">Test</a>

 

改进: 使用Onclick,给双引号加上\",单引号不用处理.并且不加“或'给JS方法

 <a href="javascript:void(0)" onclick=Display("abc@\"ab'c.com","Aleax&nbsp;Xie","10101239393")>Test3</a>

 

这样解决了Js参数中有单引号与双引号的问题,但这有限制: 参数与参数之前不能有空格,参数值中不能空格,如果有空格,则用"&nbsp;"来代替.

 

四、window.print()打印base64图片问题

js打印window.print()图片打印

问题:window.print()打印时,因为window.print是异步的,所以存在图片没加载完就打印的情况。

导致图片不显示。

 

解决:判断图片是否加载完成,加载完成在调用打印。(直接.onload不行,当浏览器有 缓存时不会进入方法)

 

var t_img; // 定时器
var isLoad = true; // 控制变量(判断图片是否 加载完成)

isImgLoad(function(){//判断全部打印图片加载完成
            window.print();
            // 加载完成
        });

//判断图片加载的函数
function isImgLoad(callback){
    // 查找所有打印图,迭代处理
    $('.printImg').each(function(){
        // 找到为0就将isLoad设为false,并退出each
        if(this.height === 0){
            isLoad = false;
            return false;
        }
    });
    // 为true,没有发现为0的。加载完毕
    if(isLoad){
        clearTimeout(t_img); // 清除定时器
        // 回调函数
        callback();
    // 为false,因为找到了没有加载完成的图,将调用定时器递归
    }else{
        isLoad = true;
        t_img = setTimeout(function(){
            isImgLoad(callback); // 递归扫描
        },500); // 我这里设置的是500毫秒就扫描一次,可以自己调整
    }
}
 。。。

 

 五、借助锚点实现多次锚定

var i=0;
function toPrice(objname){
	var mao = "curmo"+i;
	$(".curmodou").attr("id",mao);
	i++;
	window.location.hash = "#"+mao;
       
	//window.location.hash = "#curmo";
	$("#"+objname).focus();
	return false;
}

 注意直接跳转到锚定 #curmo 会无法跳转,需要将 # 独立出来锚定

 

六、禁用页面弹窗

禁用alert是浏览器的事情,如果要使当前页面alert失效,把alert定义为空函数即可。

window.alert=function(){};

 

七、JS引用

方法一,在调用文件的顶部加入下例代码:

 

document.write(”<script language=javascript src=’/js/import.js’></script>”);

(注:有时你引用的文件还可能需要引用其他的js,我们需要将需要的那个js文件也以同样的方法引用进来)

 

方法二,通过中间界面对js进行应用

 

就是我们可以在某个html中引用了你需要的js文件,我们可以通过拿到那个html文件的对象,然后在通过这个对象去引用js的方法。

(一般不常用,这个在我做项目的时候用过一次)

 

方法三:在将下边代码放入Body中:

 

new_element=document.createElement(”script”);

new_element.setAttribute(”type”,”text/javascript”);

new_element.setAttribute(”src”,”import.js”);

document.body.appendChild(new_element);

 

 

分享到:
评论

相关推荐

    常用JS总结二

    常用JS总结二

    JS总结第二章

    JS总结第二章自己写的总结 请大家下载看看 谢谢

    JS总结(大全)

    #### 二、JavaScript 的实现方式 JavaScript 代码通常通过 `&lt;script&gt;` 标签嵌入到 HTML 页面中。这种内联方式使得 JavaScript 代码可以直接在浏览器中执行,而无需额外的编译步骤。 - **基本语法示例**: ```...

    实用javaScript技术总结(二)

    这篇“实用JavaScript技术总结(二)”将深入探讨一些高级和实用的JavaScript概念,以帮助开发者提升技能并解决实际问题。 首先,我们要理解JavaScript的核心特性。这包括变量、数据类型、作用域和生命周期。在...

    第二天JavaScript笔记总结

    第二天JavaScript笔记总结

    js二级导航菜单

    总结,"js二级导航菜单"是通过JavaScript实现的一种动态交互菜单,它提高了用户的浏览效率和体验。通过熟练掌握DOM操作、事件处理、CSS样式控制以及可能的动画效果,开发者可以创建出功能强大且美观的二级导航菜单。...

    JavaScript学习总结

    本文将围绕“JavaScript学习总结”这一主题,深入探讨其基本概念、语法特性、DOM操作以及与CSS的协同使用。 一、JavaScript基础 JavaScript由Brendan Eich在1995年发明,最初是为了网页交互而设计,现在已经成为...

    JS做的二级横向导航条

    总结起来,"JS做的二级横向导航条"是一个利用JavaScript增强用户体验的交互式设计,它通过监听鼠标事件动态展现二级菜单,并使用DOM操作实现选中状态的高亮显示。通过结合HTML、CSS和JavaScript,可以创建出既美观又...

    js 显示base64编码的二进制流网页图片

    而在JavaScript中,可以使用btoa()函数对字符串进行Base64编码,以及atob()函数对Base64编码的字符串进行解码。 关于浏览器对Base64编码数据的支持,当前主流浏览器如IE8、Firefox、Chrome和Opera等都已经支持Data ...

    javascript知识点总结《一》

    #### 第二章:JavaScript语法 ##### 任务: - 掌握JavaScript的基本语法。 - 熟练使用JavaScript函数。 - 属性JavaScript的BUG调试方法。 - 常用的输入、输出、确认。 ##### 输入、输出、确认: - `prompt()`:...

    利用JS与HTML实现地级市的简易的二级联动

    总结来说,这个项目涉及了HTML基础结构、JavaScript事件监听以及DOM操作等核心概念,是学习Web前端开发的一个实用示例。通过这个项目,开发者可以更好地理解如何使用JavaScript与HTML协同工作,实现动态交互的网页...

    js基础知识点总结-入门级别

    ### JavaScript基础知识点总结—入门级别 #### 一、JavaScript简介 JavaScript是一种主要应用于网页开发的脚本语言,它能够在客户端运行。通过JavaScript可以为网页添加动态效果,改善用户体验,例如实现网页元素...

    js学习总结

    总结来说,JS学习涉及基础语法、数据类型、进制转换、错误处理等多个方面,理解这些基础知识对于深入学习和应用JavaScript至关重要。同时,了解和掌握像jQuery这样的库可以帮助开发者更高效地处理DOM操作,提高开发...

    微软CRM 二次开发页面控制JS总结

    微软CRM 二次开发页面控制JS总结,以前老是在网上找不到这些开发Js页面控制的操作,现在自己做了一些总结,希望学习者能有帮助。

    JS方法总结

    JavaScript,简称JS,是Web开发中的核心技术之一,用于实现客户端的动态交互效果。这篇总结将深入探讨JavaScript的各种方法,同时也会分享一些软件测试中的实用经验。 一、JavaScript基础方法 1. 变量声明:在...

    js-xlsx二次简单封装工具

    **js-xlsx二次封装工具详解** 在Web应用中,数据导入导出是常见的需求,特别是Excel格式的数据交换,因其灵活性和广泛支持而受到青睐。SheetJS的js-xlsx库是JavaScript处理Excel文件的一个强大工具,它允许我们读取...

    javascript学习总结中(二)

    在“javascript学习总结中(二)”这篇博文中,作者主要分享了JavaScript编程中的关键概念和技术,这对于我们深入理解和应用JavaScript至关重要。JavaScript是一种广泛用于网页和应用程序开发的脚本语言,它赋予网页...

    JavaScript知识点总结文档

    除了 Web 浏览器,ECMAScript 还可以应用于多种环境,例如 Node.js(服务器端 JavaScript 环境)、IoT 应用、游戏引擎等。 #### 三、ECMAScript 基础 ##### 2.1 ECMAScript 语法 - **变量声明**:变量区分大小写...

    js写的城市列表二级联动列表

    城市列表的二级联动效果在...总结,这个项目的核心是利用JavaScript和jQuery实现基于静态数据的城市列表二级联动功能,无需数据库查询,提高了开发效率和灵活性。通过理解这些知识点,你可以构建出自己的城市选择组件。

Global site tag (gtag.js) - Google Analytics