在《Silverlight嵌入到HTML之windowless属性及运用AjaxControlToolKit时出现虚线边框的问题》里谈一些Silverlight在浏览器上运行时会出现虚线边框的问题,当时主要考虑了IE7和FireFox,却没想到在ie6 sp2上还是会出现虚线边框,必须鼠标点击一次让其获得焦点虚线边框才消失。

  经过测试,发现如果用<asp:Silverlight />引入silverlight来取代直接使用<object>可以避免虚线边框的出现。实际上直接使用<object>的代码可以完全移植到<asp:Silverlight />里,<asp:Silverlight />是动态生成了object标签的,只不过其中的很多js我还没有看得很明白。

  需要注意的一点,直接使用<object>对应的代码可以写成这样:

>

  在对应的onSilverlightLoaded事件中可以获得<object>元素及包含他的<div>:

 objElement.parentNode;
}

  

  使用<asp:Silverlight />控件实际上生成的也是<object>,只不过在<object>标签外面加了一个<span>,大致等价于:

>

      所以如果将上面的<object>改成用<asp:Silverlight />控件:

>

     对应的javascript代码要稍做修改: 

function onSilverlightHomePeoplePickerLoaded(sender, args) {            
      
var objElement = sender.get_element();
      
var divHost = objElement.parentNode.parentNode;
}

相关文章:

  • 2021-08-18
  • 2021-05-29
  • 2022-01-20
  • 2022-12-23
  • 2022-01-12
  • 2021-09-24
  • 2022-01-11
猜你喜欢
  • 2022-01-24
  • 2022-02-10
  • 2021-12-28
  • 2022-12-23
  • 2021-06-21
相关资源
相似解决方案