Javascript 当前光标位置(百分比)
如何以百分比形式获取当前光标位置(xy坐标)Javascript 当前光标位置(百分比),javascript,jquery,Javascript,Jquery,如何以百分比形式获取当前光标位置(xy坐标) <script type="text/javascript"> $(document).ready(function(){ $(document).mousemove(function(getCurrentPos){ var xCord = getCurrentPos.pageX; var yCord = getCurrentPos.pageY;
<script type="text/javascript">
$(document).ready(function(){
$(document).mousemove(function(getCurrentPos){
var xCord = getCurrentPos.pageX;
var yCord = getCurrentPos.pageY;
console.log(xCord+" "+yCord);
});
});
</script>
$(文档).ready(函数(){
$(文档).mousemove(函数(getCurrentPos){
var xCord=getCurrentPos.pageX;
var yCord=getCurrentPos.pageY;
console.log(xCord+“”+yCord);
});
});
我想要页面的总宽度(x坐标)用百分比来处理响应性布局?使用:
getCurrentPos.view.outerHeight
和getCurrentPos.view.outerWidth
来获得高度和宽度的实际大小,然后用已经得到的百分比来计算。使用:getCurrentPos.view.outerHeight
和getCurrentPos.view.outerWidth
来获得高度和宽度的实际大小,然后用您已经得到的计算百分比。您可以输入jquery调用,类似于:
xPercent = xCord / $( document ).width() * 100;
console.log( xPercent + "%" );
(另请注意jQuery调用)您可以输入jQuery调用,例如:
xPercent = xCord / $( document ).width() * 100;
console.log( xPercent + "%" );
(另请注意jQuery调用)
pageY
将考虑浏览器标题栏的偏移量,您希望改用clientY
。在下面的代码中,您的xPercent
和yPercent
从0到1(如果需要实际百分比,请乘以100)
或者,由于您使用的是jQuery,
$(window).width()和$(window).height()
更适合跨浏览器使用。pageY
将考虑浏览器标题栏的偏移量,因此您希望改用clientY
。在下面的代码中,您的xPercent
和yPercent
从0到1(如果需要实际百分比,请乘以100)
或者因为您使用的是jQuery,$(window).width()
和$(window).height()
更适合跨浏览器使用。我知道这是非常古老的,并且有一个公认的答案,但我想既然它出现在谷歌上,我会提供一种非jQuery的方式,尽管它可能很简单
我制作这个代码笔是为了方便参考:
HTML(用于显示数字):
Position X: <span id="posX">NaN</span>%<br/>
Position Y: <span id="posY">NaN</span>%
body {
margin: 0;
overflow: hidden;
width: 100vw;
height: 100vh;
background: skyblue;
font-weight: bold;
font-family: arial;
}
// Container and displays
const container = document.querySelector("body");
let posXDisplay = document.getElementById("posX");
let posYDisplay = document.getElementById("posY");
// On mousemove
container.addEventListener("mousemove", (e)=> {
// Do math
xPercent = parseInt(e.pageX / window.innerWidth * 100);
yPercent = parseInt(e.pageY / window.innerHeight * 100);
// Display numbers
posXDisplay.innerText = xPercent;
posYDisplay.innerText = yPercent;
});
Javascript(魔法):
Position X: <span id="posX">NaN</span>%<br/>
Position Y: <span id="posY">NaN</span>%
body {
margin: 0;
overflow: hidden;
width: 100vw;
height: 100vh;
background: skyblue;
font-weight: bold;
font-family: arial;
}
// Container and displays
const container = document.querySelector("body");
let posXDisplay = document.getElementById("posX");
let posYDisplay = document.getElementById("posY");
// On mousemove
container.addEventListener("mousemove", (e)=> {
// Do math
xPercent = parseInt(e.pageX / window.innerWidth * 100);
yPercent = parseInt(e.pageY / window.innerHeight * 100);
// Display numbers
posXDisplay.innerText = xPercent;
posYDisplay.innerText = yPercent;
});
我知道这是非常古老的,并且有一个公认的答案,但我想既然它出现在Google上,我会提供一种非Jquery的方式,尽管它可能很简单
我制作这个代码笔是为了方便参考:
HTML(用于显示数字):
Position X: <span id="posX">NaN</span>%<br/>
Position Y: <span id="posY">NaN</span>%
body {
margin: 0;
overflow: hidden;
width: 100vw;
height: 100vh;
background: skyblue;
font-weight: bold;
font-family: arial;
}
// Container and displays
const container = document.querySelector("body");
let posXDisplay = document.getElementById("posX");
let posYDisplay = document.getElementById("posY");
// On mousemove
container.addEventListener("mousemove", (e)=> {
// Do math
xPercent = parseInt(e.pageX / window.innerWidth * 100);
yPercent = parseInt(e.pageY / window.innerHeight * 100);
// Display numbers
posXDisplay.innerText = xPercent;
posYDisplay.innerText = yPercent;
});
Javascript(魔法):
Position X: <span id="posX">NaN</span>%<br/>
Position Y: <span id="posY">NaN</span>%
body {
margin: 0;
overflow: hidden;
width: 100vw;
height: 100vh;
background: skyblue;
font-weight: bold;
font-family: arial;
}
// Container and displays
const container = document.querySelector("body");
let posXDisplay = document.getElementById("posX");
let posYDisplay = document.getElementById("posY");
// On mousemove
container.addEventListener("mousemove", (e)=> {
// Do math
xPercent = parseInt(e.pageX / window.innerWidth * 100);
yPercent = parseInt(e.pageY / window.innerHeight * 100);
// Display numbers
posXDisplay.innerText = xPercent;
posYDisplay.innerText = yPercent;
});
什么百分比?页面的总高度/宽度是多少?@KevinBrown:我想要页面的宽度,我建议你把它放在问题中。计算百分比是一个很小的数学问题。你不知道怎么做吗?@tryingtogetprogramming直截了当:我明白了。感谢什么?页面的总高度/宽度是多少?@KevinBrown:我想要页面的宽度,我建议你把它放在问题中。计算百分比是一个很小的数学问题。你不知道怎么做吗?@tryingtogetprogramming直截了当:我明白了。谢谢