用JavaScript获取页面上被选中的文字的技巧

系统 2277 0

这里介绍的一个小技巧是如何用JavaScript获取页面上被选中的文字的方法。最关键的JavaScript API是:

      event.selection = window.getSelection();
    

 

这里的 selection 实际上是个对象,但如果我们使用 .toString() 或强行转化成字符串,我们将得到被选中的文字。

      $(document).ready(function () {
			$(".contenttext").mouseup(function (e) {
				var txt;
				var parentOffset = $(this).offset();
				var x = e.pageX - parentOffset.left;
				var y = e.pageY - parentOffset.top;
				txt = window.getSelection();
				if (txt.toString().length > 1) {
					alert(txt);
				}
			});
		});
    

 

如果我们把这段代码放置到下面的页面中:

      <html>
			<head>
				<title>Get selected text with JavaScript</title>
				<meta charset="UTF-8">
				<meta name="viewport" content="width=device-width, initial-scale=1.0">
				<style type="text/css">
				.contenttext{width: 500px; margin: 0 auto;}
				h2{width: 100%; text-align: center;}
				</style>

				<script src="http://www.webhek.com/wordpress/wp-includes/js/jquery/jquery.js" type="text/javascript"></script>
				<script type="text/javascript">
					jQuery(document).ready(function () {
						jQuery(".contenttext").mouseup(function (e) {
							var txt;
							var parentOffset = jQuery(this).offset();
							var x = e.pageX - parentOffset.left;
							var y = e.pageY - parentOffset.top;
							txt = window.getSelection();
							if (txt.toString().length > 1) {
								alert(txt);
							}
						});
					});
				</script>
				
			</head>
			<body>

				<h2>请用鼠标选中一段文字</h2>
				<div class="contenttext">
					和客户端的 JavaScript 不同的是,PHP 代码是运行在服务端的。如果您在您的服务器上建立了如上例类似的代码,则在运行该脚本后,客户端就能接收到其结果,但他们无法得知其背后的代码是如何运作的。您甚至可以将 WEB 服务器设置成让 PHP 来处理所有的 HTML 文件,这么一来,用户就无法得知服务端到底做了什么。 

					使用 PHP 的一大好处是它对于初学者来说及其的简单,同时也给专业的程序员提供了各种高级的特性。当您看到 PHP 长长的特性列表时,请不要害怕。您可以很快的入门,只需几个小时您就可以自己写一些简单的脚本。 
				</div>

			</body>
		</html>
    

 

 

当用鼠标选中页面中的部分文字,同时你就获取到了选中的内容,我在这里使用 alert() 方法将其显示出来。

用JavaScript获取页面上被选中的文字的技巧

 

原文: http://www.webhek.com/get-selected-text-with-javascript

用JavaScript获取页面上被选中的文字的技巧


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论