저는 100 % 확신 할 수없는 질문이 있습니다. 제가이 일을하는 가장 좋은 방법에 대해 너무 확신하고 있습니다. 그래서 제가 (단순화 된 예를 사용하여) 무엇을하려고하는지 설명하고, 거기에서 갈거야.IE VBScript HTC 동작 - 모든 동작 인스턴스 간의 정적 변수?
당신은 임의의 HTML 요소 (IMG, A, TD, 뭐든간에)가 있습니다. 하지만 - - 그들이 정상적인 테두리 이전에 선택한 요소를 설정해야 는 CSS를 통해 사람들은 HTML 동작
.BoldSelection {
behavior: url(SelectBold.htc);
border: thin solid black;
}
행동이 단순히 클릭 할 요소 주위에 두꺼운 테두리를 둔다에게 할당됩니다.
그래서 여기에 HTC 소스가 있습니다. 이 동작은 모든 동작 인스턴스간에 CurrentlyFocusedElementID가 정적 인 경우 작동합니다. 그러나 그렇지 않습니다.
<Public:Attach Event="onContentReady" onEvent="LoadInit" />
<Script Language="VBScript" type="Text/VBScript">
Sub LoadInit
element.onClick = getRef("setFocusedElement")
End Sub
Sub setFocusedElement
set ele = document.getElementByID(CurrentlyFocusedElementID)
ele.style.border = "thin solid black"
CurrentlyFocusedElementID = element.id
element.style.border = "thick solid black"
End Sub
</Script>
가 나는 또한 ... 내가 임의의 속성을 저장하거나 포함되어있는 문서의 DOM에서 속성 수 있다면 그때가 마지막 활성 요소를 찾기 위해 공통의 장소로 그것을 사용할 수 있다고 생각 슬프게도 나는 알아낼 수 없습니다 일종의 해킹 (예 : 신체의 클래스 값 하이재킹)을 사용하지 않고 그렇게 할 수있는 방법을 찾으십시오.
나는 HTC 안에 모든 코드를 포함하고 싶습니다. 이 방식으로 모듈 방식을 사용하는 것을 좋아합니다. CSS 동작과 콜백을 할당 할 수있는 방식으로 부모 속성이 없습니다. 선언 할 HTML 구성 요소가 없습니다.
어떻게하면 되겠습니까?
미리 감사드립니다.
코드를 완료, 고의적 나이가 있다는 사실에도 불구하고, 우리가 아직 기업의 세계에서 IE6를 죽일 수 없었던 이유는, IE에서만 작동하도록 설계 iPod보다. 좋은 브라우저를 잠그지 않는 IE 용 앱을 작성하는 것은 전적으로 가능합니다. 부끄러운 줄 알아라! –
음, 조엘 - 나는 진심으로 당신과 동의합니다. 그러나 모든 것과 마찬가지로 - 그것을위한 장소가 있습니다. 저는 이것을 HTML 응용 프로그램 개발에 사용하고 있습니다. 기업 표준은 IE입니다. 다른 브라우저는 없습니다. 이것은 웹 서버에서 호스팅되지 않습니다. EXCEPT IE를 위해 아무 것도 쓸 필요가 없습니다. – Yesurbius
예,하지만 VBScript에없는 IE 용 코드를 작성할 수 있으며 동작에 의존하지 않았습니다. 그런 다음 회사의 마음을 바꿀 수있는 능력을 빼앗기지 않고 회사 표준을 준수합니다. MS는 처음 HTC 동작을 발명했을 때 W3C에 HTC 동작을 제출했습니다. W3C가 IE9를 거부했기 때문에 IE9가 행동 지원을 중단한다면? IE 전용 상점에서도 표준을 고수하면 장기적으로 회사 비용을 절약 할 수 있습니다. –