我正在开始学习开发移动网络浏览器网站的细节.是否有任何良好的在线资源/社区讨论移动特定网站开发问题?
我最初的理解是,为了覆盖不同的手机你需要建立一个网站,该网站是为webkit引擎(iphone,android等)的浏览器启用的,另一个是其他旧版浏览器的基本网站,这个假设是正确的吗?
对webkit的开发究竟意味着什么呢?它与仅使用javascript/css/html有什么不同?它是否相同除了你限制自己的webkit特定功能和CSS?我查看了webkit网站,但没有用这些术语解释它.
在为移动浏览器开发时,还需要注意其他任何问题吗?
我想知道当用户切换回"你的"页面窗口时是否有可能获得一个事件?当用户打开新选项卡然后切换回页面选项卡或用户关闭safari然后再次打开时,可能会发生这种情况.
我希望能够在收到此活动后更新页面上的内容.我现在使用setInterval来实现这一点,但是当用户关注窗口时没有延迟会很好.
谢谢!
我正在使用Android G1默认Web浏览器,我正在使用JavaScript进行开发 - 当我放大或缩小网页时,我无法获得真实的视觉宽度和高度.
当我放大/缩小时,似乎我从window.innerWidth中得到了错误的值.
我想要做的是 - 在视觉固定的地方显示一个元素,即使我正在缩放和滚动页面. - 因此无论用户是缩放还是滚动,用户都可以随时看到该元素.
我已经尝试使用"固定"位置但没有成功.使用视口元标记可能不是一个好的解决方案,因为我不想限制网页尺寸,我确实希望支持缩放功能.
有没有人有解决方案或想法如何实现这一目标?
我在数据移动应用程序上构建了一个复杂的表单,现在我正在寻找一个解决方案来保持标题和页脚栏的位置.在我的桌面上使用Chrome和Safari进行开发和测试的假人中,我只是将页眉和页脚放置在绝对位置,以及内容部分,其高度由JavaScript在windows的resize事件中设置.
这对移动世界来说不是一个正确的方法,因为移动WebKit不支持overflow:auto.
我自己尝试了一些东西,我还看了一下iScroll.事实上,iScroll在我的iPad上崩溃了Safari,而没有该组件的应用程序运行得相当顺利.我有很多相对复杂的形式,这可能是iScroll的挑战,我认为这是不可能的.
因此,我正在寻找其他方法来实现我的目标(持久的页眉和页脚),而不让用户使用两个手指进行滚动(事实上,几乎没有人知道"技巧").
有什么建议?
谢谢!
Safari有一些奇怪的行为box-shadow.
input[type="text"]{
-webkit-box-shadow: 0 0 8px #000000;
box-shadow: 0 0 8px #000000;
}
input[type="text"]:focus{
outline: none;
-webkit-box-shadow: 0 0 8px #ffffff;
box-shadow: 0 0 8px #ffffff;
}
Run Code Online (Sandbox Code Playgroud)
将box-shadow被显示,但只要元素获得焦点的阴影完全消失.如果您未设置任何内容,则会发生相同的效果:焦点.
它适用于Desktop-Safari.我正在使用iOS 5测试版(iPad),我无法在稳定版本或其他设备上测试它.
有人有解决方案吗?
Apple(部分)开源了他们在iOS中使用的WebKit和JavaScriptCore引擎:http://www.opensource.apple.com/release/ios-433/
已经可以在iOS上构建,使用和发布您自己的JavaScriptCore版本.但是,是否可以对WebKit的渲染引擎进行相同的操作?iOS上的UIWebView非常有限.缺少的重要功能是访问JavaScriptCore JavaScript上下文对象.没有它,在共享相同的JS引擎时,几乎不可能直接在JavaScriptCore中运行一些代码和Web视图中的一些代码.因此,我有兴趣构建自己的基于WebKit的Web视图,该视图公开了JavaScript上下文.
有没有在这方面做过任何工作的项目呢?编译的Web视图库是否会太大而无法随应用程序一起提供?
谢谢!
我在iPad的网页上有一个HTML元素,它必须是只读的,以防止用户更新内容,使用readOnly='readOnly'该元素无法选择,并且元素的文本内容根本无法复制.
是否有任何方法使元素只读,用户可以选择/复制文本内容????
我正在制作一个响应迅速的移动网站.在我的手机上进行测试时,我注意到我无法垂直滚动可以水平滚动的内容.
这是我的意思的一个例子(抱歉,你不能看到你的手机上的水平滚动,但只是相信我,它的工作原理).
在此示例中,移动Webkit浏览器无法滚动表格:http: //jsfiddle.net/tArEy/
然后我注释掉以下行以使垂直滚动工作.但是,这使得水平滚动有点不稳定.
-webkit-overflow-scrolling: touch;
Run Code Online (Sandbox Code Playgroud)
在这个例子中,移动Webkit浏览器可以滚动到表格之外,但是它有点麻烦. http://jsfiddle.net/tArEy/1/
有没有人知道如何使用CSS解决这个问题?
演示必须在浏览器上进行测试.(我在Android上运行Chrome浏览器.我认为iPhone有同样的问题).
编辑:
事实证明,在没有CSS中的以下行的情况下,在移动webkit浏览器中水平滚动是非常错误的:
-webkit-overflow-scrolling: touch;
Run Code Online (Sandbox Code Playgroud)
然而,这条线使得无法垂直滚动,所以我有点停滞不前.其他非webkit浏览器水平滚动就好了.
编辑2:
我把手放在了iphone上.溢出滚动是硬件加速并且完美无缺.这似乎只是针对Android的Chrome问题.
是否存在WKWebView的Objective C接口/编程API,允许增加域的localStorage的大小限制?当我使用下面的脚本调试iOS Framework创建的嵌入式浏览器时,我得到DOMException的消息QuotaExceededError: DOM Exception 22大约是2750KB的存储空间.
function gen(n) {
return new Array((n * 1024) + 1).join('a')
}
// Determine size of localStorage if it's not set
var i = 0;
try {
// Test up to 10 MB
for (i = 0; i <= 10000; i += 250) {
localStorage.setItem('test', gen(i));
}
} catch (e) {
console.log(e.message + ' : ' + i + 'KB size limit');
}
Run Code Online (Sandbox Code Playgroud)
可以通过在Safari中运行脚本来重新创建相同的错误.虽然我可以理解为什么不允许在浏览器中运行的脚本通过JavaScript设置大小,但WebKit中必须有一个编程API来修改它.
javascript objective-c local-storage mobile-webkit wkwebview
mobile-webkit ×10
javascript ×6
webkit ×4
android ×3
css3 ×2
html ×2
barcode ×1
css ×1
ios ×1
ipad ×1
iphone ×1
mobile ×1
objective-c ×1
scroll ×1
wkwebview ×1