我在我的Android应用程序上使用了一个浏览外部页面的webview.它有一些锚(<a>标签).当我按下它时,会出现黄色边框.
如何防止它并删除此边框?
我试过以下技巧:
// jQuery
$("a").focus(function(){
$(this).attr("hideFocus", "hideFocus");
});
// CSS
a, :focus {
outline: none;
}
Run Code Online (Sandbox Code Playgroud)
但没有成功.
谢谢 !
嗨,我有一个Web应该能够在智能手机和桌面浏览器上运行.虽然我期望在像Iphone这样的小型设备上获得一些奇怪的行为,但我非常有信心它会在Android Galaxy Tab上运行良好,这是我现在可以运行测试的Android设备.
现在我在Galaxy Tab上安装了一堆浏览器来测试:
在我使用过的桌面上
最后我有一个Iphone来测试.
该网站使用HTML5画布进行像素和基于精灵的绘制,没有花哨的变换,滤镜或效果,主要是简单的路径和多边形.我会听触摸事件并使用requestAnimationFrame正确的重绘.
总体而言,该应用程序在桌面浏览器上运行良好,它在iOS Safari(iPhone)和Firefox-on-Android上运行良好.Androids Native Browser给我带来了麻烦.我已将其设置为当javascript没有响应时屏幕刷新红色,并且在触摸屏幕时它几乎总是闪烁.
所以我想知道Android Native App和HTML5是否存在任何已知问题.由于本机浏览器的名称不存在,因此很难获得有关此内容的Google信息.有什么想法,我可以获得更多信息?什么可能导致本机Android浏览器滞后的想法?
关于这个问题有一些想法:
iOS不支持requestAnimationFrame,因此我将其替换为基于超时的替换.如果我在Android的本机浏览器上使用该替换,问题仍然存在.
我经常使用AJAX(google clojure xhrio)从服务器检索数据.可能是数据检索回调是cloggin我的事件管道?
是否已知日志控制台消息(console.log)会降低应用程序的速度?他们可以触发浏览器重新运行DOM树或任何相关的东西吗?
javascript html5 mobile-website android-browser html5-canvas
有没有办法将自定义参数传递给Android市场(或任何其他方式),以便我的应用程序在安装后接收参数(并且第一次运行).
让我解释.
- 使用argument1 ="Hello world1"(每次自定义参数)启动一个intent
- 从Android市场安装应用程序.
- 第一次打开应用程序.
- 应用程序显示消息"Hello world1"
任何情况都会这样做,而不只是意图到Android市场.
大多数情况下,应用程序将通过带有绑定http架构的条形码扫描程序进行安装.因此,浏览器的解决方法也是可行的,HTML5客户端存储,(存储到浏览器的参数,并在我的应用第一次运行时从那里获取)
更新
解决方案是为浏览器创建cookie或其他内容,然后从我安装的应用程序中访问它.那可能吗?如果是这样,你能提供一些相关信息吗?浏览器可以与应用共享数据吗?
我们可以使用READ_HISTORY_BOOKMARKS权限获取我们在默认浏览器中获取的Chrome浏览历史记录/书签吗?PS:我只是想知道它有可能吗?
android android-browser android-contentprovider google-chrome-app
编辑: 我已经向youtube上传了一个视频,展示了这里的错误:http://www.youtube.com/watch?v = zkDYlgtX5Hk
我有一个非常奇怪的错误,我发现在运行Android 4.03 ICS的三星Galaxy S2上测试我的新网络应用程序.
当您在默认Web浏览器中加载表单然后向下滚动页面时,即使表单元素本身已向上滚动,hitbox/touchable区域似乎仍保留在页面首次加载时它在屏幕上的位置屏幕.
据我所知的少数测试设备,我认为这只发生在三星Galaxy S2上,因为我在Android模拟器中尝试使用相同版本的android并且无法复制问题.我知道这使得它成为一个非常具体的用户群,但是最后我检查了Galaxy s2是我国(澳大利亚)最受欢迎的Android手机,所以找到一个修复程序会很高兴.
我在http://users.tpg.com.au/geoffica/test.html创建了一个非常简单的页面来演示这个
您可以通过执行以下操作来复制问题:
现在我知道你认为这很复杂并且可能很少发生,但是在我为客户构建的表单中,因为元素的位置,hitbox总是与表单的提交按钮重叠,使它成为现实很难点击提交按钮.如果命中框重叠,选择列表也会窃取其他选择列表中的触摸,触摸时会显示错误的选项.
我尝试了很多东西,但到目前为止我发现的唯一解决方法是使用touchstart事件来触发我的提交按钮而不是点击事件.这似乎发生在选择列表的单击事件之前,并阻止它首先进入,但这远非理想,并且不会阻止选择列表窃取页面上其他元素的点击.
我还想过滚动我自己的jquery插件,可能会将选择列表放在屏幕外,然后触摸链接或其他东西来触发他们的点击事件.如果它是移动设备,则无论选择的位置如何,选项都将出现在屏幕上.然而,这将非常麻烦,我需要考虑这对来自PC或ipad的用户产生的影响,例如在下拉列表中显示选项.对我来说听起来很有道理.甚至可能需要一些Galaxy s2特定的浏览器/设备嗅探.
除了不使用选择列表之外,有没有人有这方面的真正解决方法?
html android-browser galaxy android-4.0-ice-cream-sandwich samsung-mobile
Android 4在用户关注时重复输入.这个重复输入位于实际输入的顶部,它的功能非常正常.这很奇怪,但好吧,它似乎工作.
但是,如果这些输入位于iframe中,则复制的输入不再呈现在原始输入的顶部,而是呈现在不同的位置.
屏幕截图(重复输入包含蓝色边框,左上角):
据我所知,它实际上渲染了这个重复的输入,好像父HTML文档根本不存在.例如,如果在iframe中添加一些margin-top,则重复输入会将其考虑在内.
我已经为您的调试享受创建了一个实例:
http://ghettocooler.net/stuff/code/android-ics-iframe/
有任何想法吗?谢谢!
我只是想知道是否还有其他方法来处理Android Webview中的网站弹出,并在新标签中打开或使用webview在新窗口中打开.
打开网址,通常在普通浏览器中在新窗口中打开.
我还在学习浏览器的实现,所以我的问题可能有点天真,所以请耐心等待:)
在具有高密度屏幕的 android设备上(devicePixelRatio为1.5),html元素的边框具有错误的边框宽度.
这里有两个框:jsbin示例,在桌面上正确显示
但是在Android上 - 无论是在chrome还是在堆栈浏览器中 - 它们都是这样的:

现在我明白为什么他们看起来像这样,但我找不到任何CSS解决方案 - 只有js.
js解决方案是将元素的宽度和高度更改为奇数以及顶部/左侧属性.
我正在尝试按照这些说明调试android javascript.
我知道如何在Android上调试javascript?,但我不清楚如何(或者如果)我可以点击断点 - 在Android设备上使用Chrome或Android浏览器.
我可以看到并"检查"设备OK:
但断点不会受到影响,也无法在控制台中看到错误的行号:
在这两个问题之间,我从调试体验中获得的信息并不多!我已经尝试在android浏览器中进行'about:debug',并且看到调试选项出现了.
我将补充说,我正在调试的js在同一Android设备上的最新Chrome中工作正常.
我想拥有类似于Chrome浏览器中的菜单项功能,就像它在图片中一样.我希望在一行中有后退,前进,刷新菜单项.如何实现类似的菜单项?是否有任何参考或是否有任何黑客来提供此功能?

我的应用仅针对平板电脑.这是我当前的操作栏菜单项:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/favorite"
android:showAsAction="always"
android:title="Happy"/>
<item
android:id="@+id/share_button"
android:icon="@drawable/share"
android:showAsAction="always"
android:title="Share"/>
<item
android:id="@+id/hola_button"
android:showAsAction="always"
android:title="Hola"/>
<item
android:icon="@drawable/more_actions"
android:showAsAction="always">
<menu>
<item
android:id="@+id/back_button"
android:icon="@drawable/back"
android:title="back"/>
<item
android:id="@+id/forward_button"
android:icon="@drawable/forward"
android:title="forward"/>
<item
android:id="@+id/refresh_button"
android:icon="@drawable/refresh"
android:title="refresh"/>
</menu>
</item>
</menu>
Run Code Online (Sandbox Code Playgroud) android-browser ×10
android ×6
css ×2
html ×2
javascript ×2
android-4.0-ice-cream-sandwich ×1
android-menu ×1
debugging ×1
forms ×1
galaxy ×1
google-play ×1
html5 ×1
html5-canvas ×1
iframe ×1
menu ×1
popup ×1
webkit ×1