Как запустить jquery script, если html-страница является главной страницей...?
Я работаю с внешней командой с нашим веб-сайтом, и они недавно добавили один из моих сценариев в .NET MasterPage сайта... ну, наконец, он получил мой script, но теперь... он загружает Баннеры на странице "Все" на сайте.
Как я могу написать оператор "if", который в основном говорит... если это домашняя страница... запустите этот script... если не так...?
Ответы
Ответ 1
Я отправляю другой ответ, если вы не можете реализовать решение главной страницы.
Вы можете использовать элемент , чтобы сообщить jQuery его главной странице, потому что ранее опубликованные URL-адреса могут легко сломаться.
Где-то в вашем домашнем контенте просто поместите это.
<span id="homepage-flag" style="display: none" />
И затем, используя jQuery, проверьте, существует ли элемент и запускает ваш код. Это довольно плохое решение, но оно будет работать, если вы не сможете получить мой другой ответ на работу.
if($("#homepage-flag").length > 0) {
// run code for homepage
}
Ответ 2
Как о держателе содержимого script, который находится внутри <head>
MasterPage, а затем размещайте содержимое внутри заполнителя с вашей домашней страницы.
В основном..
На главной странице
<head>
<title>hello</title> etc...
// add jQuery here
<asp:ContentPlaceHolder ID="jQueryCode" runat="server"></asp:ContentPlaceHolder>
И затем на вашей домашней странице
<asp:Content ContentPlaceHolderId="jQueryCode" runat="server">
// run jQuery script here
</asp:Content>
Кроме того, если вы не используете jQuery на других страницах, вы можете удалить его из MasterPage и добавить его прямо над своей script на домашней странице <asp:Content />
Ответ 3
Вы не должны, но вы, вероятно, могли бы сделать что-то вроде этого:
if(window.location.pathname == "{home page}")
{
//run home page jquery.
}
НО... моим советом было бы создать раздел содержимого на домашней странице, который будет помещен в HEAD, и вместо этого поставить jQuery вместо главной страницы. Нет причин включать его в главную страницу, если он не используется везде...
Ответ 4
если вы используете vb.net, вы можете использовать заполнитель содержимого, как упоминалось выше, но просто используйте небольшое кодовое имя в файле главной страницы vb, чтобы скрыть/показать заполнитель:
If Request.Url.AbsolutePath.ToLower = "/index.aspx" Then
jQueryCode.Visible = true
End If
(обязательно установите видимость по умолчанию на вид: false сначала перед перестройкой следующим образом:)
<asp:Content ContentPlaceHolderId="jQueryCode" runat="server" visible="false">
// run jQuery script here
</asp:Content>