onclick滚动事件 - 语法?
试着让它根据页面左侧或右侧的点击来滚动。似乎没有工作..也许我的语法不正确或我用来找到页面的左侧或右侧的方法是?onclick滚动事件 - 语法?
与<body onclick="scrollevent()">
:
<script>
function scrollevent()
{
var y=0;
var pwidth = $('#slideshow').width();
var mouseY = ev.clientY;
if (mouseY<(pwidth/2) {
$('#slideshow').animate({scrollLeft: "+=400"});
}
else{
$('#slideshow').animate({scrollLeft: "-=400"});
}
}
</script>
您可以使用pageX
和event
对象不pageY属性,尝试以下操作:
相对于文档的左边缘的鼠标位置。
$(document).click(function(e){ // or $(document).on('mousemove', function(e){
var mp = e.pageX;
var w = $(window).width()/2;
if (mp < w) {
$('#slideshow').animate({scrollLeft: "+=400"});
} else {
$('#slideshow').animate({scrollLeft: "-=400"});
}
})
请注意,在代码中的语法错误,你已经错过了)
:
if (mouseY<(pwidth/2) {
应该是:
if (mouseY < (pwidth/2)) {
您正在使用clientY。
使用clientX而不是clientY来检查它是在页面的左侧还是右侧进行单击。
演示可以在这里找到:http://jsfiddle.net/codebombs/UT9xK/
即时消息一个白痴!哈哈 – rootsup 2012-08-02 18:31:29
的.animate()方法可以让我们在任何数字CSS属性创建动画效果。
.scrollLeft()是一个jQuery函数,而不是CSS属性。
UPD:我的坏,因为文档说:
除了样式属性,一些非样式属性,如scrollTop的和scrollLeft,以及自定义属性,可以是动画。
滚动功能工作正常时调用它自己的,这是休息 – rootsup 2012-08-02 17:54:34
行:
if (mouseY<(pwidth/2) {
缺少一个关闭)
。试试这个:
if (mouseY<(pwidth/2)) {
它不工作吗?你有没有收到任何错误信息? – SomeKittens 2012-08-02 17:42:52
意想不到的令牌{在线>>>>>>如果(mouseY rootsup 2012-08-02 17:48:37
回答!希望它有帮助。 – SomeKittens 2012-08-02 17:51:14