js中使用indexOf()方法是提示(对象不支持此属性或方法)解决办法:
“对象不支持此属性或方法” 表示 javascript对象没有这个方法,无法调用,比如
A.B() 当A对象没有B方法的时候,会报这个异常。
因为javascript是脚本语言,解释执行,所以只有在执行的过程中才会报错,而编译语言,像java,c等在编译的时候就会报错。
A.indexOf() 在原生JS中只能用于String对象,比如var s=“123”alert(s.indexOf("1")) // 不会报错
var s=123alert(s.indexOf("1")) // 报错,因为s是number,这时候你需要把s转换成string才可以运行。
如以上回答未解决问题,请尝试:
var parr = ["a","b","c","d"]
判断parr 数组中是否存在a
parr.indexOf("a")==-1 在ie8下会提示对象不支持indexOf属性或方法
解决办法:
用jquery里的$.inArray替代indexOf
$.inArray(“a”, parr)==-1
定义的$冲突了,看$(function( ) { $("#id").show( )})应该是引用了jQuery吧。如果是把a.js的改了用jQuery操作var listLength = $("li", "#"+id).length
如果不是引用的jQuery,那你只能改其中的一个$ function,如function $(id) { return document.getElementById(id)}改成function $$(id) { return document.getElementById(id)}
还有jQuery中可以把$映射回原始的对象使用jQuery.noConflict()如果这样的话,$(function( ) { $("#id").show( )})就得写成$(function( ) { jQuery("#id").show( )})