如果html页面是主页,如何运行jquery脚本…?

我正在与我们网站的外部团队合作,他们最近将我的一个脚本添加到该网站的.NET MasterPage中……最后它确实让我的脚本运行但是现在……它在’每个’上加载横幅网站上的页面。

我怎么能写一个’if’语句基本上说……如果这是主页…运行这个脚本……如果不是……?

如果您无法实施母版页解决方案,我会发布另一个答案。

您可以使用flag元素告诉jQuery它是主页,因为之前发布的URL解决方案很容易破解。

在您的主页内容的某处,只需放置此内容即可。

  

然后使用jQuery,检查元素是否存在并运行代码。 这是一个非常糟糕的解决方案,但如果你无法得到我的其他工作答案,它将会起作用。

 if($("#homepage-flag").length > 0) { // run code for homepage } 

如果脚本内容占位符位于MasterPage的内,然后将内容放在主页的占位符中。

基本上..

在您的母版页中

  hello etc... // add jQuery here  

然后在你的主页

  // run jQuery script here  

另外 – 如果您没有在其他页面上使用jQuery,可以将其从MasterPage中删除并将其添加到主页上方的脚本正上方

你不应该,但你可以做这样的事情:

 if(window.location.pathname == "{home page}") { //run home page jquery. } 

但是 ……我的建议是在主页上创建一个内容部分,该部分放入HEAD并将jQuery放入其中而不是母版页。 如果没有在任何地方使用它,没有理由将它包含在母版页中……

如果你正在使用vb.net,你可以使用上面提到的内容占位符,但只需在masterpage vb文件上使用一些代码隐藏来隐藏/显示占位符:

  If Request.Url.AbsolutePath.ToLower = "/index.aspx" Then jQueryCode.Visible = true End If 

(确保在重建之前首先将默认视图设置为visible:false 🙂

  // run jQuery script here