js相关问题的解决方案

本文汇总了前端开发中常见的问题解决方法,包括IE9下button超链接失效的修复方案、超链接跳出iframe的方法、时间比较函数、图片尺寸获取及处理技巧、表格文字自动换行样式设定、JSON与JSONP的区别及使用场景、字符串替换方法等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、IE9 button 超链接 无效解决方案

<a href="<%=path %>/mobileView/demo.html"><input type="button" value="配置" onclick="this.parentNode.click()" class="input_srue" /></a>

onclick="this.parentNode.click()" 很关键


2、超链接跳出iframe方法:将超连接加入 target=_top 即可


3、js将选择的时间与当前时间比较

var str ='2012-08-12 23:13:15';
str = str.replace(/-/g,"/");
var date = new Date(str );
var curDate = new Date();

if(date<curDate)   


4、session过期跳出iframe

login.jsp 里增加

<script language="JavaScript">
if (window != top)
top.location.href = location.href;
</script>


5、js编码与解码

encodeURI() 函数可把字符串作为 URI 进行编码。

解码为decodeURI()


6、js substring与substr的区别


在JS中, 函数声明: stringObject.substring(start,stop)

  start是在原字符串检索的开始位置,stop是检索的终止位置,返回结果中不包括stop所指字符.JS中的substring和substr函数的区别

如:"hamburger".substring(4,8) returns "urge"

 

substr(start,length)

如:当DETAIL_TYPE 的值为1111053 时,
substr(DETAIL_TYPE,1,6)  =111105 
从DETAIL_TYPE的第一位开始取六位字符。


7、js图片处理

js获取图片的高宽:【img.height 图片高度为0时,是因为图片有可能还未加载完毕】

var img = new Image();
            img.src=imgServer+"/"+retData.con.filename+"."+retData.con.ext;
            img.onload = function(){
                $("#bigBrandForm").append("<input type='hidden' id='secondPicHeightToWidth' value='"+img.height/img.width+"'/>");
            };


图片缩放:<img id="imgPath_pic" onload="javascript:if(this.width>200){this.width=200;this.height=this.height*200/this.width;}" src="" />



8、jsp页面的table格中的字自动换行

<style type="text/css"> 
.AutoNewline 

  Word-break: break-all;/*必须*/ 
  width :50px;/*这里是设置多宽就进行换行 */ 

</style>



9、js json与jsonp

js  ajax 调用接口时如果dataType为json时不能跨域访问,则反馈回来的数据就是json串格式,可直接解析。可处理特殊字符

$.ajax({
            url:root+"/***.rq?rmethod=index",
            dataType:"json",
    
            success:function(data){
                if(data)
                    setData(data);
            }
        });


如果dataType为jsonp时能跨域访问,返回的数据需要用eval或JSON.parse转换成对象,方可直接解析,jsonp对于特殊字符如单引号(')等无法转义。


$.ajax({
            url:root+"/izp.rq?rmethod=index",
            dataType:"jsonp",
            jsonp:"callback",
            success:function(data){
                if(data)
                    setData(JSON.parse(data));
            }
        });

10、js replaceAll  实现

String.prototype.replaceAll  = function(s1,s2){  
return this.replace(new RegExp(s1,"gm"),s2);   //这里的gm是固定的,g可能表示global,m可能表示multiple。
}
调用方式:
如想替换字符串"aa bb cc"中的所有空格,可以执行"aa bb cc".replaceAll(" ", "");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值