我说我有一个像这样的页面的部分(粗略的HTML给出一个想法):
www.mydomain.com/contact-us
<div class="regional-offices">
<div class="south-west">
<a href="#south-west">South West</a>
<div class="south-west-content">South west office address</div>
</div>
<div class="north-east">
<a href="#north-east">North East</a>
<div class="north-east-content">North east office address</div>
</div>
...
...
Run Code Online (Sandbox Code Playgroud)
目前,这些是一组手风琴,展开以显示链接点击时的内容.我想要做的是将它们视为单独的URL,以便它们可以被Google单独编入索引,当然它们只是一个页面的一部分.
我一直在研究历史API,并且可以看到我如何为每个部分创建唯一的URL这样做,但我的理解落在了谷歌或其他搜索引擎将如何处理这些链接,如果所需的信息已经是页面,而不是存储在自己的单独URL.
例如,第一步是将<a>标记更改为:
<a href="/contact-us/north-east">North East</a>
Run Code Online (Sandbox Code Playgroud)
然后我们可以使用JS preventDefault()直接转到URL,而是为用户提供扩展的手风琴,使用History API将页面向下滚动到手风琴和唯一的URL.如果我们直接访问URL或点击任何链接,这一切都很好.
但问题是,据我所知,Google抓取工具会尝试关注该链接并面对404,因为没有Javascript阻止访问URL中的资源.而且我也不希望有.
或者我需要一个独特的位置来保存手风琴的内容,这是可转位的,并且当折叠的手风琴与之交互时也会用AJAX拉入?
如果我没有说清楚,请道歉.
我在 Windows 7 上使用 MinGW。
简而言之,我想创建一个 Hello World SDL 程序(启动一个窗口或一些简单的东西),然后编译它,这样我就有了一个独立的程序,我可以分发它,而无需用户安装任何额外的东西(比如SDL.dll在Windows 文件夹)。
c:\SDL.test.cpp和SDL.dll我不太确定接下来要做什么;我一开始以为我可以包含 SDL,然后只需在命令行中链接到 DLL,瞧,但也许我似乎需要先用我的程序编译 SDL 开发库?我唯一的目标是将我的 SDL 程序打包在一个文件夹中,我可以将其分发到其他 Windows 平台,而无需他们安装任何额外的东西——或者他们肯定需要在 Windows 文件夹中安装 SDL.dll?
编辑:进一步澄清 - 有人可以描述我将采取的步骤吗?我的意思是,希望分发其应用程序的开发人员会做什么?安装此类应用程序时,大多数游戏安装程序是否会将.dll文件放在文件Windows夹中?
来源(test.cpp):
#include <SDL/SDL.h>
#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
文件夹:
test.cpp
SDL.dll
命令行:
g++ test.cpp -lSDL
输出:
test.cpp:2:17: fatal error: SDL.h: No such file or directory
compilation terminated
目前,我们使用 Github Actions 来运行 Testcafe 套件,但问题是在macos-latest图像(10.15 Catalina)上运行 Safari 测试时出现以下错误:
UnableToAccessScreenRecordingAPIError: The find-window process cannot access the Screen Recording API.
这是因为 MacOS 映像没有默认授予该权限。显然你无法以编程方式处理这个问题,并且在 10.15 Catalina 中启用了一个名为 SIP 的功能,可以阻止你绕过它。这里讨论这个问题。
由于我们依赖 Github 提供图像,因此他们无法向我们提供此处讨论的非 SIP 图像。提供的解决方法没有任何帮助。
还有其他想法吗?
我想编写一个标识特定HTML页面上所有链接的函数.我的想法是使用XPath,通过使用路径,如//body//a[x]增加x来遍历页面上的第一,第二,第三个链接.
在Chrome中尝试此操作时,我会加载页面http://exoplanet.eu/,并在Chrome Developer Tools JS控制台中调用$x("//body//a[1]").我期待页面上的第一个链接,但这会返回多个锚元素的列表.调用$x("//body//a[2]")返回两个锚元素.呼叫$x("//body//a[3]")什么都不返回.
我希望[x]每次递增会在页面上逐一给出每个唯一的链接,但它们似乎是分组的.我怎样才能重写这条路径,以便逐一挑选每个锚标签?
在下面的代码,我想保留number_list,迭代之后,因为.into_iter()那for默认情况下使用会消耗.因此,我假设n: &i32并且我可以n通过解除引用获得价值.
fn main() {
let number_list = vec![24, 34, 100, 65];
let mut largest = number_list[0];
for n in &number_list {
if *n > largest {
largest = *n;
}
}
println!("{}", largest);
}
Run Code Online (Sandbox Code Playgroud)
有人向我透露,我们可以将其&n用作"模式":
fn main() {
let number_list = vec![24, 34, 100, 65];
let mut largest = number_list[0];
for &n in &number_list {
if n > largest {
largest = n;
}
}
println!("{}", largest); …Run Code Online (Sandbox Code Playgroud) 我的理解是操作符>>返回左操作数,因此如果遇到错误或其他错误则cin >> x返回cin值.现在我的猜测是,因为跳过空白,所以不会存储字符.我想做的是这样的事情:falseEOFcin\n
int x;
while((cin >> x) and x != '\n')
// do stuff
Run Code Online (Sandbox Code Playgroud)
因此,当cin在流中遇到换行符时,它会退出输入循环(正如通常所说的那样EOF).
为什么Google结构化数据测试工具会显示Schema.org微数据的RDFa节点数据?例如,请参阅为Drupal Schema.org模块生成的此示例 ; 这是如何将Schema.org微数据插入页面的示例,但Drupal测试工具将微数据报告为rdfa-node.我认为Schema.org是微数据的子集,与RDFa不同?测试工具刚搞糊涂了吗?
所以,我有一个在 DOM 完全加载时运行的 init 函数:
function init()
{
TerrainObj.load_terrain();
TerrainObj.generate_display_layer(PlayerObj);
GameObj.update();
ScreenObj.draw_screen(TerrainObj);
ScreenObj.update_screen(TerrainObj);
mainloop();
}
Run Code Online (Sandbox Code Playgroud)
第一个方法,TerrainObj.load_terrain(),发出一个 AJAX 请求L:
load_terrain: function()
{
var settings = {
type: "GET",
url: "data/map.txt",
aysnc: false
};
$.ajax(settings).done(function(result)
{
this.terrain = result.split("\n");
for (var i = 0; i < this.terrain.length; i++)
{
this.terrain[i] = this.terrain[i].split("")
}
console.log(this.terrain);
});
}
Run Code Online (Sandbox Code Playgroud)
问题是,在我们的init()函数中,后面的大多数方法都TerrainObj.load_terrain()需要存在TerrainObj.terrain array,但是在 AJAX 请求可以完成并填充该变量之前调用它们。当每个函数运行以检查订单时,我会发出一条小消息,我得到了这个:
Ran TerrainObj.load_terrain()
Ran ScreenObj.draw_screen()
Uncaught TypeError: Cannot read property '0' of undefined
[Array[55], Array[55], …Run Code Online (Sandbox Code Playgroud) c++ ×2
ajax ×1
automation ×1
compilation ×1
drupal ×1
e2e-testing ×1
history.js ×1
javascript ×1
jquery ×1
microdata ×1
rdfa ×1
reference ×1
rust ×1
schema.org ×1
sdl ×1
seo ×1
syntax ×1
testcafe ×1
testing ×1
xpath ×1
xpointer ×1