Windowless=true 상황에서 TextBox가 입력할 수 없는 문제를 철저히 해결하다
9136 단어 window
Silverlight Html content , Silverlight aspx html div, div include iframe,
windowless=true HTML Silverlight , iframe Silverlight , big mistake,
Silverlight TextBox , , Silverlight bug。
검색한 결과 아직 철저한 해결 방법이 없다는 것을 발견했다. 모두 html의 input을 통해 대체된 것이다. 그러나 이런 문제는 input의 위치가 실버라이트에 내장된 레이아웃으로 제어할 수 없다는 것이다. 다음은 CSS의 정의인 z-index를 통해 iframe를 실버라이트 앞에 두는 것을 고려했다. 이렇게 하면 windowless=false의 상황에서 html을 실버라이트 앞에 표시할 수 있지만 또 하나의 문제가 생겼다.그러나silverlight 이쪽 클릭 mouse에서 iframe 초점을 잃은 후 html의zindex는silverlight 뒤로 달려가 html을 볼 수 없게 되었다.
기왕 이렇게 된 이상 우리는 초점을 주는 방식으로 해결한다. 바로javascript의iframe이다.focus () 결과 문제는 여전한 것 같습니다. html로 실버라이트와 함께 방송하려면 정말 큰일입니다. 하지만 마지막에 Silverlight에서net의 스티커에서 작은 디테일을 발견했습니다. 바로 iframe의 속성에 값을 부여하는 것입니다. 보기에는 하나의 등호이지만 초점 문제를 해결했습니다. 다음은 코드를 공유합니다.
<html>
<head>
<title>tests</title>
<script type="text/javascript">
function onmyblur() {
var d = document.getElementById("myid");
d.style.height = 0;
d.style.height = 400;
// d.focus();
}
</script>
<style type="text/css">
html, body {
height: 100%;
overflow: auto;
}
body {
padding: 0;
margin: 0;
}
#silverlightControlHost {
height: 100%;
text-align:center;
}
</style>
</head>
<body>
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2"
width="100%" height="100%">
<param name="source" value="ClientBin/test4.xap" />
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="4.0.50303.0" />
<param name="autoUpgrade" value="true" />
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50303.0" style="text-decoration: none">
<img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight"
style="border-style: none" />
</a>
</object>
<iframe id="_sl_historyFrame" style="visibility: hidden; height: 0px; width: 0px;
border: 0px"></iframe>
</div>
<!--onblur="onmyblur();"-->
<div style="background-color:Gray;position: absolute; z-index: 1010; left: 0px; top: 0px; width: 100%;height:100px">
</div>
<div id="mydiv" style="position: absolute; z-index: 1010; left: 250px; top: 50px; width: 300px;
height: 400px;">
<iframe id="myid" onblur="onmyblur();" name="myid" src="http://www.baidu.com"> </iframe>
</div>
</body>
</html>
도움이 되었으면 좋겠습니다~
본 블로그의 내용을 옮겨 싣는 데는 반드시 출처를 밝혀 주십시오. 감사합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
TIL - Window global object자바스크립트가 돌아가는 플랫폼은 호스트(host) 라고 불립니다. 호스트는 브라우저, 웹서버, 심지어는 커피 머신이 될 수도 있습니다. 각 플랫폼은 해당 플랫폼에 특정되는 기능을 제공하는데, 자바스크립트 명세서에선 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.