基本的 JQuery 问题

发布于 2024-11-16 14:21:28 字数 652 浏览 4 评论 0 原文

我有以下 JQuery 代码,用于在页面加载时处理 GET 请求:

$(document).ready(function() {  
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });

  }, 30000); 
});

问题是我希望仅在特定页面上处理此 GET 请求。我的应用程序在 application.js 文件中一次加载所有 JQuery 文件。我如何使用 JQuery 来指定除文档就绪之外的其他内容以及理想的选择器是什么?

I have the following JQuery code that processes a GET request upon page load:

$(document).ready(function() {  
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });

  }, 30000); 
});

The problem is I would like this GET request to be processed only on a specific page. My application loads all JQuery files at once, in an application.js file. How can I use JQuery to specify, something other than document ready and what would an ideal selector be?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

静待花开 2024-11-23 14:21:28

您可以将 class 添加到 body 标记。

$(document).ready(function() {  
  if ($('body').hasClass('updateTweets')) {
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });

  }, 30000); 
  }
});

You could add a class to the body tag.

$(document).ready(function() {  
  if ($('body').hasClass('updateTweets')) {
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });

  }, 30000); 
  }
});
吹梦到西洲 2024-11-23 14:21:28

您可以根据仅存在于您希望代码触发的页面上的元素的存在来执行条件。

复制自另一个问题:

jQuery.fn.exists = function()
{
    return jQuery(this).length > 0;
}

if ($(selector).exists())
{
    // your code here
}

You could do a conditional based on the existence of an element that only exists on the page you want your code to fire.

Copied from another question:

jQuery.fn.exists = function()
{
    return jQuery(this).length > 0;
}

if ($(selector).exists())
{
    // your code here
}
玉环 2024-11-23 14:21:28

难道您不能将代码包含在您希望其运行的一页上吗?

标记之间的某个位置,您可以使用:

<script type="text/javascript">
[...code...]
</script>

将问题中的代码放在

Couldn't you just include the code on the one page you want it run on?

Somewhere between the <html> tag you can have:

<script type="text/javascript">
[...code...]
</script>

With the code in your question between the <script> tags.

美人如玉 2024-11-23 14:21:28

使用 window.location.href 检查文件位置,然后使用 if 语句:

if(window.location.href == 'whatever.html'){
    $(document).ready(function() { 
           ...
    })
}

Check the file location with window.location.href then use an ifstatement:

if(window.location.href == 'whatever.html'){
    $(document).ready(function() { 
           ...
    })
}
弥繁 2024-11-23 14:21:28

您可以检查 location 属性来了解您所在的页面。

您还可以检查元素是否存在:

if ($("something").length)

You can check the location property to find out which page you're in.

You can also check for the existence of an element:

if ($("something").length)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文