최근까지 저는 현재 jQuery 플러그인 테스트 및 디버깅을 위해 Safari 4를 사용하고있었습니다. Firefox에서 코드를 시험해 보았는데 JQuery 프레임 워크에서 "getter 만있는 속성 설정"에 대해 불평하기 시작했습니다. 나는 불평 파이어 폭스를 일으키는 라인을 찾아 노력이 여기 어딘가에 발생 **"getter 만있는 속성 설정"- firefox의 javascript 오류
$.fn.util.create_$dom = function(opt) {
var $dom = {};
$.each(opt.dom,function(name,val){
console.log(name);
var $elm = $('<div>');
$.each(opt.dom[name],function(_name,_val){
if(_name == 'tagName') $elm = $('<'+_val+'/>');
});
console.log(name+': ok');
$.each(opt.dom[name],function(_name,_val){ **here
switch(_name){ **here
case 'className': $elm.addClass(_val); **here
default: $elm.attr(_name, _val); **here
} **here
});
$dom[name] = $elm;
console.log(name+': ok');
});
return $dom;
};
options.dom이 보이는 것을 발견 : 당신이 설정하려고처럼
dom:{
wrapper:{className:'wrapper'},
inner:{tagName:'p',className:'test',test:'bla'}
},
추측 ppl은 아침에 더 똑똑합니다 ... 나는 강한 커피를 마시고 깊은 숨을들이 쉬고 나서 저와 함께있었습니다. redsquare는 물론 문제에 대해 완전히 옳았습니다. 비슷한 해결책이 있습니다. 방금 추가 한 내용 : case 'tagName': break; 이 문제를 피하려면 파이어 폭스가 나를 좋아합니다. –