2012-09-13 3 views
0

JS가 좋지 않습니다. 나는이 코드에서 jQuery 플러그인을 수정하려고 :작은 따옴표, 큰 따옴표, 더하기 기호 (자바 스크립트)

aTag += " style='"+innerStyle+"'"; 
aTag += arrow + '<span>text here</span>'; 

를이 코드로 :

//aTag += " style='"+innerStyle+"'"; 
aTag += arrow + '<span style="'+innerStyle+'">text here</span>'; 

은 기본적으로 내가 태그를 걸쳐 앵커 태그에서 innerStyle의 내용을 이동하려는. 그러나 Firebug에서 이동 후이 난장판을 보았습니다.

<span blue;"="" solid="" 1px="" border:="" 25px;="" text-indent:="" transparent;="" -80px="" 5px="" scroll="" no-repeat="" image.png")="" images="" web="" 127.0.0.1="" http:="" style="background: url(">text</span> 

왜 이것이 span 태그에서 작동하지만 앵커 태그에서는 작동합니까? 더하기 (+) 기호는 무엇입니까?

+1

var innerStyle에는 무엇이 들어 있습니까? – jtheman

답변

2

+이 경우 (텍스트 연결)처럼 보입니다. 여기에서 문제는 첫 번째 인스턴스에서 생성되고있는 HTML은 다음과 같습니다이다 :

style='some contents with a " symbol' 

두 번째 경우에 어떻게 생성되는 것은이 동안

: ...

style="some contents with a " symbol" 

하는, 보시다시피 코드가 깨졌습니다. 코드를

aTag += arrow + "<span style='" + innerStyle + "'>text here</span>"; 

으로 변경하십시오.

+0

당신 말이 맞아요, 작동합니다! 작은 따옴표를 사용할 때는 언제나 혼란 스럽지만. 어쨌든 고마워. – user1576748

관련 문제