相关疑难解决方法(0)

无限滚动或大量dom元素的表现?

我对大量的dom elmenets和表现有疑问.

假设我在页面上有6000个dom元素,并且当用户与页面交互(用户滚动以创建新的dom元素)(如twitter)时,元素的数量可以增加.

为了提高页面的性能,我只能想到两件事.

  1. 将display设置为none以显示隐形项以避免重排
  2. 从dom中删除不可见的项目,然后根据需要重新添加它们.

它们是否有其他方法可以改善具有大量dom元素的页面?

javascript performance dom

67
推荐指数
3
解决办法
3万
查看次数

以跨浏览器的方式查找视口的确切高度和宽度(无原型/ jQuery)

我试图找到浏览器视口的确切高度和宽度,但我怀疑Mozilla或IE正在给我错误的数字.这是我的身高方法:

var viewportHeight = window.innerHeight || 
                     document.documentElement.clientHeight || 
                     document.body.clientHeight;
Run Code Online (Sandbox Code Playgroud)

我还没有开始宽度,但我猜它会有类似的东西.

是否有更正确的方法来获取此信息?理想情况下,我也希望该解决方案能够与Safari/Chrome /其他浏览器配合使用.

javascript cross-browser viewport

65
推荐指数
4
解决办法
9万
查看次数

JavaScript - 获取浏览器高度

我正在寻找一个代码片段来获取浏览器窗口中可视区域的高度.

我有这个代码,但它有点被窃听,好像身体没有超过窗口的高度然后它回来短.

document.body.clientHeight;
Run Code Online (Sandbox Code Playgroud)

我尝试过其他一些东西,但它们要么返回NaN,要么与上面相同.

有谁知道如何获得浏览窗口的真实高度?

javascript height window

50
推荐指数
4
解决办法
14万
查看次数

什么是怪癖模式?

在很多关于设计的文章中,提到了怪癖模式.有人在纯文本和开发前景中对这个事情有所了解吗?

html css

44
推荐指数
4
解决办法
4万
查看次数

有没有办法在响应式设计中调整google adsense的大小?

我在我的响应式wordpress设计中使用谷歌adsense(使用Twitter引导程序.)现在,当网站调整大小时,广告很远,看起来很糟糕.

我可以做些什么来帮助解决这个问题吗?我实际上看到一个网站,看起来有人在较小的屏幕上调整广告...我不确定这是怎么可能的,因为它是java脚本,对吧?

任何反馈都会非常有帮助.谢谢!

css wordpress adsense responsive-design twitter-bootstrap

23
推荐指数
2
解决办法
1万
查看次数

如何从iframe中使用javascript获取iframe的高度?那些包含多个iframe的网页呢?

有没有办法通过从iframe内部执行脚本来检测iframe的高度和宽度?我需要根据iframe的不同高度/宽度动态定位iframe中的一些元素.

如果同一页面中有多个iframe会有什么区别吗?即每个iframe想要找到自己的尺寸.

Javascript或jquery解决方案受到欢迎.

谢谢!

<iframe src='http://example.com' width='640' height='480' scrolling='no' frameborder='0' longdesc='http://example.com'></iframe>
Run Code Online (Sandbox Code Playgroud)

iframe必须嵌入到其他网站上,正如下面的答案之一所述,我遇到了权限问题.

html javascript iframe jquery dom

16
推荐指数
3
解决办法
7万
查看次数

量角器测试(在角度位置使用Selenium和Chrome)给出了错误的x和y点

我一直在调试测试,发现量角器找到了正确的元素,但位置(x和y)没有链接到找到的按钮的位置.当在此元素上调用click时,它会错过并单击错误的位置,从而导致测试失败.

作为一个注释,这些测试似乎在其他机器上运行良好,唯一的区别是测试失败的操作系统是Windows 10?

有谁知道量角器/硒如何确定元素的位置.

提前致谢.

杰克里夫斯

编辑:

在评论后请求一些例子:

要获取页面对象:

browser.get('examplePageAddress')
Run Code Online (Sandbox Code Playgroud)

要获取按钮所在的标题:

var elem = element.all(by.className('header')).get(0)
Run Code Online (Sandbox Code Playgroud)

要获取按钮位于标题内的div:

var div = elem.element(by.name('examplename'))
Run Code Online (Sandbox Code Playgroud)

获得实际按钮

var button = element(by.name('exampleButtonName'))
Run Code Online (Sandbox Code Playgroud)

在实际测试中,调用一个简单的button.click(),这就是按钮大约50px.

通过调试和写入控制台,我已经确认选择了正确的元素[使用.getInnerHTML()]并通过测量按钮的位置确定它大约是50px不同[使用.getLocation()来确定返回的x和y量角器]

selenium google-chrome angularjs selenium-webdriver protractor

12
推荐指数
1
解决办法
939
查看次数

如何检测手机浏览器的屏幕尺寸?

我正在开发一个需要在桌面和移动设备上工作的网站.现在我有一个主内容div设置为屏幕宽度的70%.但是,我觉得这对于移动设备来说很小(比如手机,而不是平板电脑),并希望将它提高到90%或95%.我怎么能这样做(比如屏幕尺寸小于5英寸)而不使用非常不可靠的设备浏览器嗅探?我一遍又一遍地听到口头禅"特征检测特征检测特征检测",我理解为什么这是一件好事...但我不知道检测这个问题的"特征"是什么......

谢谢.

javascript mobile jquery detect

11
推荐指数
1
解决办法
3万
查看次数

显示动态html内容,如epub/ebook,而不将html转换为epub格式?

我想创建一个响应,移动优化的阅读体验类似于epub/ebook阅读器,如Kindle应用程序,或iBooks,使用动态HTML作为源.

想象一篇长篇文章或博客文章,需要大量垂直滚动才能阅读,特别是在小型移动设备上.我想要做的是将长页面分成多个全屏幕部分,允许用户使用左/右导航箭头和/或滑动手势来"翻阅"整篇文章.

有许多可用的JS库可以创建预定义幻灯片的"幻灯片放映"或"转盘"(使用div或其他容器元素).但是我希望文本和html内容能够动态地重新流动以适应任何设备视口并且仍然可读...就像一个epub/ebook用户界面,如Kindle应用程序或iBooks.因此,对于同一篇文章,手机上会有比平板电脑或桌面视口更多的"页面",如果/当视口大小发生变化时,需要动态创建/调整这些"页面"(比如在移动设备上从纵向切换到横向).

以下是javascript .epub阅读器的示例:epub.js

...注意响应行为.调整视口大小时,所有文本都会重新流动以适应可用空间,增加或减少"页面"的总数.问题是epub.js需要.epub文件作为其源.

我想要的是html页面的相同用户界面和功能.

我搜索并搜索了某种可以开箱即用的库,但却找不到任何东西.

我意识到我可以使用转换脚本将我的html页面转换为.epub文件,然后使用epub.js在浏览器中呈现该文件,但这看起来非常圆润且笨重.使用html作为直接来源,渲染/模仿客户端响应电子书用户体验,模仿或模拟.epub读者用户体验会好得多.

有谁知道这样的事情是否已经存在,或者我怎么能自己建造它?

关键功能是动态/响应式文本重排.当视口尺寸减小时,文本/内容需要回流到下一个"页面"以避免任何垂直滚动的需要.我不知道如何有效地做到这一点.如果我自己编写代码,我可能会使用类似jQuery Columnize插件的东西,将所有列设置为width: 100vw; height: 100vh,以便每列都像一个"页面",然后找出如何在这些"页面"之间创建一个滑动UI.

任何帮助深表感谢!

html javascript css jquery

11
推荐指数
1
解决办法
1418
查看次数

JavaScript使用视口宽度/高度计算

我试图在我的移动Webview中设置响应点并执行此操作:

var w = window.innerWidth-40;
var h = window.innerHeight-100;
Run Code Online (Sandbox Code Playgroud)

到目前为止,这很有用.但值-40和-100不在视口缩放高度和宽度中.

当我这样做:

var w = window.innerWidth-40vw;
var h = window.innerHeight-100vh;
Run Code Online (Sandbox Code Playgroud)

因为它应该保持响应和相对于视口 - JS不再工作.我认为vh和vw只适用于CSS?我怎样才能在JS中实现这一目标?

请求没有JQuery解决方案 - 只有JS!

谢谢

javascript css viewport

10
推荐指数
2
解决办法
1万
查看次数