자바 스크립트 함수의 이름은 S (HTML에서, 주어진 문서에 고유 id
들과 달리, 클래스 이름은 동일한 페이지의 여러 요소에 기인 할 수 있기 때문에)으로 getElementsByClassName
이다.
페이지의 소스 코드를 보면 실제로는 temp
및 tempF
태그가 지정된 여러 요소가 있음을 알 수 있습니다. 추출 할 항목에 따라 올바른 것을 선택해야합니다 (처음부터 두 번째?).
이
tempString = [deg stringByEvaluatingJavaScriptFromString:@"document.getElementsByClassName('temp tempF')[0].innerText;"];
(당신이 어떤 형식 매개 변수가없는 경우 stringWithFormat
를 사용할 필요, 그건 그냥 잔인한 없다, 단순히 직접 리터럴 문자열을 사용)
: 예를 들어
추 신 : 어휘에 대해 명확히하기 위해, 요소가 <div class="temp tempF">
으로 HTML로 작성되었다는 사실은이 단어가 div
이라는 것을 의미합니다. 두 개의 CSS 고유 클래스, 즉 temp
및 tempF
따라서이 요소는 "클래스 이름이 temp tempF
인 요소"가 아니라 "두 개의 클래스 이름이 temp
및 tempF
인 요소"입니다.
팁 : Mac에서 크롬이나 사파리 같은 브라우저에서 페이지를 열고, 당신의 자바 스크립트 디버깅 페이지 관리자를 표시하고 당신이 바로 여기에 자바 스크립트 코드를 입력 비트를 테스트 할 수 있도록 콘솔 탭으로 이동하십시오 다른 식과. 귀하의 경우 귀하의 기능이 잘못 입력되어 이름에 "s"가 누락 된 것을 보았을 것입니다. 그리고 일단 getElementsByClassName
의 결과가 하나가 아닌 복수의 요소를 반환하는 것을 보았을 것입니다.
[0] 간단하지만 멋지다! –