我有一个继承的iframe,pointer-events: none;但是当我<div>在iframe中插入一个pointer-events: auto;div时,div不会对点击或任何鼠标悬停事件做出反应.
原因是它在iframe里面,<div style="position:fixed;">
所以它有点像一个小菜单.但我希望用户点击iframe,而不是通过iframe中的链接和div.
是的,它绝对需要保持iframe.
我怎么能绕过这个?我可以绕过这个吗?
这是一个简单的例子:jsfiddle.net/MarcGuiselin/yLo119sw/2
我正试图找出一种方法来使用javascript抓住最多订阅的前5万个youtube频道.这些只需要抓取一次,并存储在一个文件中,用于网页中的自动完成输入.
通过使用参数搜索search:list(/ youtube/v3/search),我已经非常接近获得第一个前50名maxResults=50, order=viewCount, part=snippet, type=channel, fields=nextPageToken,items(snippet(channelId,title))
返回:
{
"nextPageToken": "CDIQAA",
"items": [{
"snippet": {
"channelId": "UC-9-kyTW8ZkZNDHQJ6FgpwQ",
"title": "Music"
}
},{
"snippet": {
"channelId": "UC-lHJZR3Gqxm24_Vd_AJ5Yw",
"title": "PewDiePie"
}
},{
"snippet": {
"channelId": "UCVPYbobPRzz0SjinWekjUBw",
"title": "???????? ?????"
}
},{
"snippet": {
"channelId": "UCam8T03EOFBsNdR0thrFHdQ",
"title": "VEGETTA777"
}
},...
Run Code Online (Sandbox Code Playgroud)
然后,我所要做的就是使用nextPageToken获取前50000的列表来获取1000次.
不幸的是,通过排序relevance,rating,viewCount,或没有不屈服的50个订阅的频道,并有不似乎是任何形式的方式由用户数量根据文件对它们进行排序; 所以好像我被卡住了.
语境:
\n在我的网络应用程序中,我创建了几组元素,所有元素都在 3d 空间中相对定位。所有元素都有transform-style: preserve-3d. 父元素用于旋转、缩放和移动所有这些元素以响应用户导航。
其中一些元素是“门户”,即矩形窗口,通过它可以看到其他几个元素。需要注意的是,这些“门户”内的元素必须与其父门户之外的元素存在于同一全局 3d 空间(而不仅仅是 2d)中。
\n这些“门户”是overflow: hidden为了隐藏其中溢出的元素。
根据 w3 规范,overflow是几个 css 属性值之一,它将对象组合在一起并创建 2d \xe2\x80\x9cflattened\xe2\x80\x9d 渲染上下文;实际上与 \xe2\x80\x9c 相同的结果transform-style: flat;\xe2\x80\x9d
问题:
\n我必须找到某种方法来反转(取消)由创建的变换矩阵,transform-style: flat;并创建与使用保留的相同的3D 渲染上下文transform-style: preserve-3d;
所有 3D css 变换都由内部的 3d 矩阵表示。transform-style: flat在用户代理的情况下,正在对其自己的变换矩阵进行一些神秘的“扁平化”数学运算。然后这个矩阵被应用到它的子项上,创造出它的子项都被展平在父项窗格中的错觉。通过一些矩阵数学应该可以绕过这种影响。
不幸的是,w3 规范没有详细说明这种“扁平化”在数学上的含义;他们在这个主题上相当模糊,简单地称之为“他们(元素)内容的扁平化表示”,“没有深度”。
\n我无法弄清楚需要进行哪些矩阵数学来重现“展平”效果。如果可以对算法进行逆向工程,则可以通过倒置矩阵轻松消除这种“扁平化”行为。每个门户元素内的辅助元素可用于应用此倒置矩阵作为变换,从而否定“展平”变换并正确恢复 3d 位置/旋转/视角。
\n下面显示的演示演示了完全有可能在扁平化的父级中创建深度印象。在这种情况下,我天真地应用了最顶层父级变换的逆。不幸的是,反转“展平”矩阵并不那么简单:
\n\n演示和链接:
\n按照本页面上的教程(2009年编写)不再工作.http://www.androidsnippets.com/how-to-make-an-activity-fullscreen
public class FullScreen extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
}
}
Run Code Online (Sandbox Code Playgroud)
类似地,尝试更改android.xml中的主题没有任何效果:android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
这是一个截图:

在网上搜了几个小时后,我找不到任何可以帮助我的文章.那么,在libgdx的1.5.4版本中,我可以如何获得身临其境的全屏?
----编辑---- 这是现在完全正常工作的代码:
public class AndroidLauncher extends AndroidApplication {
@Override
protected void onCreate (Bundle savedInstanceState) {
hideSystemUi();
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
config.hideStatusBar=true;
config.useImmersiveMode=true;
initialize(new game(), config);
}
private void hideSystemUi() {
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE);
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个Chrome扩展程序,可以在页面中插入一个菜单,但是当任何flash或html5视频播放器全屏显示时,视频播放器外部的任何内容都是不可见的.
我可以在同一时间全屏显示两个对象(一个在另一个上面),还是有另一种方法可以做到这一点?我宁愿不必将html专门插入不同网站的不同位置,因为现有的视频播放器种类繁多.解决方案应该适用于所有视频播放器.
编辑:
从那以后,很多网络已经转向使用html5而不是flash,所以这已成为几乎所有网站都可能做的事情.
这是我最终编写和使用的代码.希望这会帮助某人:
document.addEventListener("webkitfullscreenchange", function(){//Whenever an element becomes or stops being in full screen
//first, grab the page's fullscreenElement
var fse = document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;
if(fse){//if there is a fullscreened element
fse.appendChild(menu);//append the menu inside the fullscreened element
}else{//if nothing is in full screen
if(window.self !== window.top){//if we are in an iframe
menu.remove();//hide menu if we are in an iframe
}else{//if we arn't in an iframe
document.body.insertBefore(menu, document.body.firstChild);//show menu
}
}
});
Run Code Online (Sandbox Code Playgroud) 是否可以一次处理多个不同的错误,而不必在Rust中单独处理而不使用其他功能?简而言之:Rust等价于try-catch语句?
早在2016年就提出了这样的功能(使用?and 进行一流的错误处理catch),但我不知道它产生了什么,以及2019年针对此类问题的解决方案的外观如何。
例如,执行以下操作:
try {
do_step_1()?;
do_step_2()?;
do_step_3()?;
// etc
} catch {
alert_user("Failed to perform necessary steps");
}
Run Code Online (Sandbox Code Playgroud)
代替:
match do_steps() {
Ok(_) => (),
_ => alert_user("Failed to perform necessary steps")
}
// Additional function:
fn do_steps() -> Result<(), Error>{
do_step_1()?;
do_step_2()?;
do_step_3()?;
// etc
Ok(())
}
Run Code Online (Sandbox Code Playgroud)
我的程序有一个功能,可以检查注册表中各种不同位置的不同数据值,并返回一些汇总数据。它需要将许多try-cache语句与try-catch和其他try-catch一起使用。
css ×3
html ×3
javascript ×3
3d ×1
android ×1
android-xml ×1
iframe ×1
java ×1
jquery ×1
libgdx ×1
matrix ×1
rust ×1
try-catch ×1
youtube ×1
youtube-api ×1