silverlight调用html中的js方法
在承载silverlight的html页添加代码:
<script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script>
<script
type="text/javascript">
var map
= null;
function GetMap()
{
map =
new
VEMap("mapDiv");
map.LoadMap();
}
function MoveMap(strwhere) {
try{
map.Find(null,strwhere);
}
catch (e)
{
alert(e.Message);
}
}
在id为silverlightControlHost的div的前面添加一个div
代码如下:
<div id="mapDiv" style="position:absolute; width:443px;
height:417px; z-index:2; left:301px; top:0px;" >
</div>
F5运行:
在silverlight的后台给textblock添加事件:
private void TextBlock_MouseLeftButtonUp(object sender,
MouseButtonEventArgs e)
{
string slcity =
"";
TextBlock sltxtblock = (sender) as
TextBlock;
slcity=sltxtblock.Text;
ScriptObject
smovemap=(ScriptObject)HtmlPage.Window.GetProperty("MoveMap");
//如果控件正在某一页中运行,则返回值将引用浏览器的 window 对象;或者,如果控件正在 IFRAME 的上下文中运行,则引用 IFRAME 的
window 对象
smovemap.InvokeSelf(slcity);//调用当前的ScriptObject并假定它表示某一js方法
}
F5运行
选择一个节点,比如我选择了郑州,结果如下:
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。