WEB开发网
开发学院网页设计JavaScript JavaScript DOM学习第九章:选取范围的介绍 阅读

JavaScript DOM学习第九章:选取范围的介绍

 2010-03-30 00:00:00 来源:WEB开发网   
核心提示: 1varuserSelection;2if(window.getSelection){3userSelection=window.getSelection();4}5elseif(document.selection){//shouldcomelast;Opera!6userSelection=

1 var userSelection;
2 if (window.getSelection) {
3     userSelection = window.getSelection();
4 }
5 else if (document.selection) { // should come last; Opera!
6     userSelection = document.selection.createRange();
7 }

在Mozilla,Safari,Opera里面现在userSelection是一个选择对象(selection object),在IE中是一个文本范围对象(text range object)。这个区别在后面的代码中依然有效:IE的文本范围对象和W3C的范围对象以及Mozilla的选择对象有根本的不同,每一部分的代码都需要另一部分的补充。

要注意分支的顺序:Mozilla Selection一定要在前。因为Opera两种都支持,如果你用window.getSelection()读取用户的选区,Opera就会创建一个选择对象,可是你用document.selection的时候他也会创建一个文本范围对象。

虽然Opera支持Mozilla和W3C模式很不错,但是支持IE确是有毛病,这样就不得不把window.getSelection放在前面检测。

userSelection的内容

现在userSelection既是一个Mozilla的选择对象又是IE的文本范围对象。这样他就可以使用所有的方法和属性了。

然后,Mozilla的选择对象userSelection里面保存的用户选择的文本(而不是HTML)。这样写:

1 alert(userSelection)

就会产生:

calls for a Blogger Code of Conduct. His proposals are: Take responsibility

not just for your own words, but for the comments you allow on your blog.

Label your toleran

如果想在微软的文本范围对象中得到相同的内容你就要使用:

编缉推荐阅读以下文章

  • JavaScript DOM学习第八章:表单错误提示
  • JavaScript DOM学习第七章:表单的扩展
  • JavaScript DOM学习第六章:表单实例
  • JavaScript DOM学习第五章:表单简介
  • JavaScript DOM学习第四章:getElementByTagNames
  • JavaScript DOM学习第三章:内容表格
  • JavaScript DOM学习第二章:编辑文本
  • JavaScript DOM学习第一章:W3C DOM简介
  • javaScript DOM方法与属性摘要

上一页  1 2 3 4 5  下一页

Tags:JavaScript DOM 学习

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接