A. 用jquery如何实时获取对象的坐标
jquery获取当前元素的坐标
1,获取对象
var obj = $("#id号"); 或 var obj = $(this);
实例中我获取的对象是弹出窗口按钮,这样创建的新窗口就会根椐按钮的位置进行调整,实例中将创建的新窗口显示的按钮的右下角。
2,获取对象元素的位置(offset()方法)
var offset = obj.offset();
获取对象元素的位置,分别是元素的top和left,调用方法是:offset.left和offset.top,可知当前对象的左部和顶部位置。
3,获取对象元素的宽度(width()方法)
var right = offset.left+obj.width();
实例中是获取对象的右下角位置,创建新窗口的左部位置。
4,获取对象元素的高度(height()方法)
var down = offset.top+obj.height();
实例中是获取对象的右下角位置,创建新窗口的顶部位置。
B. jquery 如何获取鼠标当前位置
获取当前位置代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>javascript获得鼠标位置</title>
</head>
<body>
<script>
<!-- 其中的参数e指的是事件-->
function mouseMove(ev)
{
Ev= ev || window.event;
var mousePos = mouseCoords(ev);
//获取当前的x,y坐标
document.getElementByIdx_x_x_xx_x("xxx").value = mousePos.x;
document.getElementByIdx_x_x_xx_x("yyy").value = mousePos.y;
}
function mouseCoords(ev)
{
//鼠标移动的位置
if(ev.pageX || ev.pageY){
return {x:ev.pageX, y:ev.pageY};
}
return{
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
y:ev.clientY + document.body.scrollTop - document.body.clientTop
};
}
document.onmousemove = mouseMove;
</script>
鼠标X轴:
<input id=xxx type=text>
鼠标Y轴:
<input id=yyy type=text>
</body>
C. jquery怎么获取元素距离屏幕的位置
$(window).height();//是文档窗口高度
$("div").offset().top//是标签距离顶部高度(没有到下面的距离,比如$("div").offset().down)
$("div").offset().left//是标签距离右边高度(没有到下面的距离,比如$("div").offset().right)
$(document).scrollTop();//是滚动条高度
$("div").height();//是标签高度
你要的高度+$("div").height()+[$("div").offset().top-$(document).scrollTop()]=$(window).height();
经过简单的数学变换即可得到你要的值了
获取页面某一元素的绝对X,Y坐标,可以用offset():
var X = $(‘#DivID’).offset().top;
var Y = $(‘#DivID’).offset().left;
获取相对(父元素)位置:
var X = $(‘#DivID’).position().top;
var Y = $(‘#DivID’).position().left;
通过getBoundingClientRect方法获取对象位置,包含: left , top , right , bottom 4个参数值。
D. 关于jquery获得元素绝对位置的问题,定位问题
原因很不好判定,这种方式定位出现错误的原因挺多的,要考虑css和html的具体写法,有时候某些不标准的写法会造成jQuery的定位数据不准确。
建议换个方式,例如每个<tr>中第一列放置一个<th></th>,后面是<td>,然后你的红框放到<th>里面,这样计算量就小多了,而且显示的也快一点。
E. jquery查找字符串,并且定位到字符串所在位置
indexOf() 和 lastIndexOf() 是js的用法,与jquery是无关的,所有直接用原生js就可以了。
indexOf() 和 lastIndexOf() 方法返回的都是指定的子串在另一个字符串中的位置,如果没有找不到子串,则返回 -1。
这两个方法的不同之处在于,indexOf() 方法是从字符串的开头(位置 0)开始检索字符串,而 lastIndexOf() 方法则是从字符串的结尾开始检索子串。
strObj.indexOf(subString[, startIndex]) 参 数 strObj 必选项。String 对象或文字,要在 String 对象中查找的子字符 串。 starIndex 可选项。该整数值指出在 String 对象内开始查找的索引。如果省略,则从字符串的开始处查找。
说明 indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回 -1。 如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。 从左向右执行查找。否则,该方法与 lastIndexOf 相同。
例子: [CODE_HTML] [/CODE_HTML] 最后得到的结果是-1,0,3
if(ss.indexOf('winner')>-1)
strobj.indexOf(substring[, startindex])
其中strobj是必选项。string 对象或文字
F. jquery怎么根据精度和纬度显示当前地址
使用class="{}"的方式,必须引入包:jquery.metadata.js;
可以使用如下的方法,修改提示内容:class="{required:true,minlength:5,messages:{required:'请输入内容'}}";
在使用equalTo关键字时,后面的内容必须加上引号,如下代码:class="{required:true,minlength:5,equalTo:'#password'}"。
G. html5+怎么获取当前地理位置
定位功能(Geolocation)是HTML5的新特性,因此只有在支持HTML5的现代浏览器上运行,特别是手持设备如iphone,地理定位更加精确。首先我们要检测用户设备浏览器是否支持地理定位,如果支持则获取地理信息。注意这个特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的,所以我们在访问该应用时会提示是否允许地理定位,我们当然选择允许即可。
function getLocation(){
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(showPosition,showError);
}else{
alert("浏览器不支持地理定位。");
}
}
上面的代码可以知道,如果用户设备支持地理定位,则运行 getCurrentPosition() 如果getCurrentPosition()运行成功,则向参数showPosition中规定的函数返回一个coordinates对象,getCurrentPosition() 方法的第二个参数showError用于处理错误,它规定当获取用户位置失败时运行的函数。
我们先来看一下函数showError(),它规定获取用户地理位置失败时的一些错误代码处理方式:
function showError(error){
switch(error.code) {
case error.PERMISSION_DENIED:
alert("定位失败,用户拒绝请求地理定位");
break;
case error.POSITION_UNAVAILABLE:
alert("定位失败,位置信息是不可用");
break;
case error.TIMEOUT:
alert("定位失败,请求获取用户位置超时");
break;
case error.UNKNOWN_ERROR:
alert("定位失败,定位系统失效");
break;
}
}
我们再来看函数showPosition(),调用coords的latitude和longitude即可获取到用户的纬度和经度。
function showPosition(position){
var lat = position.coords.latitude; //纬度
var lag = position.coords.longitude; //经度
alert('纬度:'+lat+',经度:'+lag);
}
利用网络地图和谷歌地图接口获取用户地址
上面我们了解了HTML5的Geolocation可以获取用户的经纬度,那么我们要做的是需要把抽象的经纬度转成可读的有意义的真正的用户地理位置信息。幸运的是网络地图和谷歌地图等提供了这方面的接口,我们只需要将HTML5获取到的经纬度信息传给地图接口,则会返回用户所在的地理位置,包括省市区信息,甚至有街道、门牌号等详细的地理位置信息。
我们首先在页面定义要展示地理位置的div,分别定义id#_geo和id#google_geo。我们只需修改关键函数showPosition()。先来看网络地图接口交互,我们将经纬度信息通过Ajax方式发送给网络地图接口,接口会返回相应的省市区街道信息。网络地图接口返回的是一串JSON数据,我们可以根据需求将需要的信息展示给div#_geo。注意这里用到了jQuery库,需要先加载jQuery库文件。
function showPosition(position){
var latlon = position.coords.latitude+','+position.coords.longitude;
//
var url = "<a href="http://api.map..com/geocoder/v2/?ak=&callback=renderReverse&location="+latlon+"&output=json&pois=0">http://api.map..com/geocoder/v2/?ak=&callback=renderReverse&location="+latlon+"&output=json&pois=0</a>";
$.ajax({
type: "GET",
dataType: "jsonp",
url: url,
beforeSend: function(){
$("#_geo").html('正在定位...');
},
success: function (json) {
if(json.status==0){
$("#_geo").html(json.result.formatted_address);
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#_geo").html(latlon+"地址位置获取失败");
}
});
});
再来看谷歌地图接口交互。同样我们将经纬度信息通过Ajax方式发送给谷歌地图接口,接口会返回相应的省市区街道详细信息。谷歌地图接口返回的也是一串JSON数据,这些JSON数据比网络地图接口返回的要更详细,我们可以根据需求将需要的信息展示给div#google_geo。
function showPosition(position){
var latlon = position.coords.latitude+','+position.coords.longitude;
//google
var url = 'http://maps.google.cn/maps/api/geocode/json?latlng='+latlon+'&language=CN';
$.ajax({
type: "GET",
url: url,
beforeSend: function(){
$("#google_geo").html('正在定位...');
},
success: function (json) {
if(json.status=='OK'){
var results = json.results;
$.each(results,function(index,array){
if(index==0){
$("#google_geo").html(array['formatted_address']);
}
});
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#google_geo").html(latlon+"地址位置获取失败");
}
});
}
H. jquery中怎么获取当前的路径
直接用js就可以获取到window.location就可以获取到
I. jquery当前位置怎么做
yload做了个demo如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script language="javascript" src="/js/jquery-1.4.4.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
<!--//
$(document).ready(function(){
$(window).bind("scroll", function(event){
$("div").each(function(){
var fold = $(window).height() + $(window).scrollTop();
if( fold <= $(this).offset().top){
$(this).trigger("appear");
}
});
});
$("div").each(function(){
if( $(window).height() > $(this).offset().top){
$(this).html("出现在可视区域");
}
$(this).one("appear",function(){
$(this).html("出现在可视区域");
});
});
});
//-->
</script>
</head>
<body>
<div>111</div>
<div>1111</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div showed = "N">111111111111</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div showed = "N">111111111111</div>
</body>
</html>