我有一个UIScrollView有几个观点.当用户轻拂手指时,视图会根据手指轻弹的方向向右或向左滚动.基本上我的代码的工作方式与iPhone照片应用程序类似.现在,有没有一种方法可以我以编程方式执行相同的操作,以便我最终得到一个单独运行的幻灯片,只需单击一个按钮并在每个滚动之间进行可配置的暂停?
你是如何真正做幻灯片的UIScrollView?
使用jQuery,我想禁用正文的滚动:
我的想法是:
body{ overflow: hidden;} scrollTop();/scrollLeft() 有没有更好的办法?
更新:
请参阅http://jsbin.com/ikuma4/2/edit,查看我的示例,以及原因
我知道有人会想"为什么他不只是position: fixed在面板上使用?".
由于我有其他原因,请不要这样做.
有没有办法用JavaScript/jQuery控制浏览器滚动?
当我将页面向下滚动一半,然后触发重新加载时,我希望页面打包到顶部,而是尝试查找最后一个滚动位置.所以我这样做了:
$('document').ready(function() {
$(window).scrollTop(0);
});
Run Code Online (Sandbox Code Playgroud)
但没有运气.
编辑:
因此,当我在页面加载后调用它们时,你的答案都有效 - 谢谢.但是,如果我只是在页面上刷新,看起来浏览器计算并滚动到.ready事件后的旧滚动位置(我也测试了body onload()函数).
那么跟进是,有没有办法防止浏览器滚动到其过去的位置,或者重新滚动到顶部它做它的事情后?
我想在加载活动后滚动到RecyclerView列表的底部.
GENERIC_MESSAGE_LIST = (ArrayList) intent.getExtras().getParcelableArrayList(ConversationsAdapter.EXTRA_MESSAGE);
conversationView = (RecyclerView) findViewById(R.id.list_messages);
conversationView.setHasFixedSize(true);
conversationViewLayoutManager = new LinearLayoutManager(this);
conversationView.setLayoutManager(conversationViewLayoutManager);
conversationViewAdapter = new ConversationAdapter(GENERIC_MESSAGE_LIST, this);
conversationView.setAdapter(conversationViewAdapter);
Run Code Online (Sandbox Code Playgroud)
conversationView.scrollTo(...)抛出了一个关于在RecyclerView中不受支持的例外,并且conversationView.scrollToPosition(...)似乎没有做任何事情.
在上面的代码块之后,我补充道
conversationView.scrollToPosition(GENERIC_MESSAGE_LIST.size() + 1)
Run Code Online (Sandbox Code Playgroud)
这不起作用.有30个元素GENERIC_MESSAGE_LIST.
我实际上有两个问题,但我们首先解决主要问题,因为我相信另一个问题更容易解决.
我在滚动的左侧有一个固定的位置div用于菜单.右侧是一个正确滚动的标准div.问题是,当浏览器视口太小而无法看到整个菜单时......没有办法让它滚动我可以找到(至少不用css).我尝试在css中使用不同的溢出,但没有任何东西使div滚动.包含菜单的div设置为min-height:100%和position:fixed ..我需要保留的两个属性.
包含菜单的div 位于另一个绝对定位且高度设置为100%的包装div内.
如果内容对于div来说太高,我怎么能让它垂直滚动?
这导致我另一个问题,我不想要滚动条显示..但我想我可能已经有了答案(只有它还没有工作,因为我不能让div滚动开始).
有解决方案吗 也许需要javascript?(我对此知之甚少)
以及导致问题的相关代码(因为在这里发布整个东西太长了):
.fixed-content {
min-height:100%;
position:fixed;
overflow-y:scroll;
overflow-x:hidden;
}
Run Code Online (Sandbox Code Playgroud)
还尝试添加高度:100%也只是为了看看是否是一个问题,但它也没有工作...也没有固定的高度,如600px.
我只是想知道如果div.loading可见,我如何才能在滚动上实现更多数据.
通常我们会查找页面高度和滚动高度,以查看是否需要加载更多数据.但是下面的例子比那复杂一点.
下图是完美的例子.在下拉框中有两个.loading div.当用户滚动内容时,无论哪个可见,它都应该开始为其加载更多数据.

那么如何才能找出.din div是否对用户可见?所以我可以开始只加载该div的数据.
我有一个问题,我没有想法,如何解决.在我的react组件中,我显示了一长串数据,底部显示了很少的链接.点击任何链接后,我用新的链接集合填写列表,需要滚动到顶部.
问题是 - 如何在渲染新集合后滚动到顶部?
'use strict';
// url of this component is #/:checklistId/:sectionId
var React = require('react'),
Router = require('react-router'),
sectionStore = require('./../stores/checklist-section-store');
function updateStateFromProps() {
var self = this;
sectionStore.getChecklistSectionContent({
checklistId: this.getParams().checklistId,
sectionId: this.getParams().sectionId
}).then(function (section) {
self.setState({
section,
componentReady: true
});
});
this.setState({componentReady: false});
}
var Checklist = React.createClass({
mixins: [Router.State],
componentWillMount: function () {
updateStateFromProps.call(this);
},
componentWillReceiveProps(){
updateStateFromProps.call(this);
},
render: function () {
if (this.state.componentReady) {
return(
<section className='checklist-section'>
<header className='section-header'>{ this.state.section.name } …Run Code Online (Sandbox Code Playgroud) 我有一个滚动div,我希望有一个链接,当我点击它将强制它div滚动查看里面的元素.我写了这样的JavasSript:
document.getElementById(chr).scrollIntoView(true);
Run Code Online (Sandbox Code Playgroud)
但这会在滚动div自己的同时滚动所有页面.如何解决?
我想这样说
MyContainerDiv.getElementById(chr).scrollIntoView(true);
Run Code Online (Sandbox Code Playgroud) 是否可以使用jQuery滚动到页面上的特定位置?
我想要滚动的位置是否必须具有:
<a name="#123">here</a>
Run Code Online (Sandbox Code Playgroud)
或者它可以移动到特定的DOM ID?
在我的应用程序中,当我开始滚动UITableView时,我想隐藏键盘.我在互联网上搜索这个,大多数答案是子类化UITableView(http://stackoverflow.com/questions/3499810/tapping-a-uiscrollview-to-hide-the-keyboard).
我做了子类但它不起作用.
#import <UIKit/UIKit.h>
@protocol MyUITableViewDelegate <NSObject>
@optional
- (void)myUITableViewTouchesBegan;
@end
@interface MyUITableView : UITableView <UITableViewDelegate, UIScrollViewDelegate> {
id<MyUITableViewDelegate> delegate;
}
@end
Run Code Online (Sandbox Code Playgroud)
.m文件
#import "MyUITableView.h"
@implementation MyUITableView
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
NSLog(@"delegate scrollView"); //this is dont'work
[super scrollViewDidScroll:scrollView];
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"delegate myUITableViewTouchesBegan"); // work only here
[delegate myUITableViewTouchesBegan];
[super touchesBegan:touches withEvent:event];
}
- (void)dealloc {
...
Run Code Online (Sandbox Code Playgroud)
我像这样使用这个类.但委托函数myUITableViewTouchesBegan在ViewController中不起作用
.H
#import <UIKit/UIKit.h>
#import "MyUITableView.h"
@interface FirstViewController : UIViewController <UITableViewDelegate, UISearchBarDelegate, MyUITableViewDelegate> {
MyUITableView *myTableView;
UISearchBar *searchBar;
}
@property(nonatomic,retain) …Run Code Online (Sandbox Code Playgroud) scroll ×10
javascript ×4
jquery ×4
css ×2
html ×2
ios ×2
ajax ×1
android ×1
css-position ×1
java ×1
keyboard ×1
objective-c ×1
overflow ×1
reactjs ×1
render ×1
scrollto ×1
uiscrollview ×1
uitableview ×1