Javascript $.get请求在ios设备上本地不工作

Javascript $.get请求在ios设备上本地不工作,javascript,ios,ruby-on-rails,ajax,coffeescript,Javascript,Ios,Ruby On Rails,Ajax,Coffeescript,虽然ajax请求和iOS上的问题已经有了很好的文档记录,但我似乎找不到任何解决我的简单$.get问题的方法。请注意,这是一个rails应用程序,在本地计算机上运行 下面是一些coffeescript,它获取用户通知并将其显示在一个div中。这在本地所有设备上都能很好地工作,包括在访问本地IP地址时使用kindle(下面的代码省略了真实IP),但在任何iOS设备上都不能 我尝试将绝对路径添加为URL,而不是/activites/notifications。我还将其编写为AJAX和$.get请求,但

虽然ajax请求和iOS上的问题已经有了很好的文档记录,但我似乎找不到任何解决我的简单$.get问题的方法。请注意,这是一个rails应用程序,在本地计算机上运行

下面是一些coffeescript,它获取用户通知并将其显示在一个div中。这在本地所有设备上都能很好地工作,包括在访问本地IP地址时使用kindle(下面的代码省略了真实IP),但在任何iOS设备上都不能

我尝试将绝对路径添加为URL,而不是
/activites/notifications
。我还将其编写为AJAX和$.get请求,但这两种请求都不适用于iOS

我如何获得下面的get请求以在iOS设备上本地工作

获取请求

jQuery ->
      arr = []
      $("#notifications").click ->
        arr.push(1)
        if arr.length <= 1
          $.get("http://68.40.3.2:3000/activities/notifications", (data) ->
             $("#notifications-area").html data )
jQuery->
arr=[]
$(“#通知”)。单击->
arr.push(1)
如果到达长度
$(“#通知区”).html数据)
AJAX请求

jQuery ->
  arr = []
  $("#notifications").click ->
    arr.push(1)
    if arr.length <= 1
     $.ajax({
       url: "http://68.40.3.2:3000/activities/notifications",
       cache: false,
       timeout: 100000,
       type: "GET",
       error: -> alert("didnt work")
       success: (data) ->
            $("#notifications-area").html data
    })
jQuery->
arr=[]
$(“#通知”)。单击->
arr.push(1)
如果到达长度警报(“不工作”)
成功:(数据)->
$(“#通知区”).html数据
})

如果有人需要更多的代码,就大声说出来。

似乎是bootstrap造成的。我使用的是传统的引导导航栏和下拉元素。特别是锚链中的
.dropdown
类和
数据切换
元素不知何故导致记录未加载/未显示。如果有人知道为什么会发生这种情况,或者知道bootstrap的更新,那么很高兴听到这个消息。现在,我是如何解决这个问题的

导航栏结构。从锚标记中删除了数据切换和下拉类

<li class="dropdown">
  <a id="notifications" href="#" class="<%= number_of_activities(current_user) > 0 ? 'new-notifications' : '' %>" title="Notifications">
      <div class="notifications-count large" id="">
        <%= number_of_activities(current_user) %>
      </div>
  </a>
  <ul class="dropdown-menu span6" id="notifications-area">
  </ul>
</li>  
  • notifications.js.coffee与加载记录之前切换notifications区域大致相同,stopPropagation调用,以便在单击notifications区域之外时关闭div

     jQuery ->
       arr = []
        $("#notifications").click (e) ->
          arr.push(1)
          e.stopPropagation()
          $('#notifications-area').toggle()
          if arr.length <= 1
            $.get("/activities/notifications", (data) ->
              $("#notifications-area").html data )
    
     $('#notifications-area').click (e) ->
        e.stopPropagation()
    
     $(document).click ->
        $("#notifications-area").hide()
    
    jQuery->
    arr=[]
    $(“#通知”)。单击(e)->
    arr.push(1)
    e、 停止传播()
    $(“#通知区域”).toggle()
    如果到达长度
    $(“#通知区”).html数据)
    $(“#通知区”)。单击(e)->
    e、 停止传播()
    $(文档)。单击->
    $(“#通知区域”).hide()
    
    这被用来省略我的真实IP地址。占位符,所以你在真实代码中使用真实IP,但你的iOS设备拒绝这样做?您是否尝试过直接从Mobile Safari的URL栏访问该URL?我从未在使用iPad通过IP访问本地网络上的内容时遇到过任何问题。是的,我可以通过mobile safari url栏访问url。没有问题,这会按预期呈现通知,只有当我尝试通过此$请求通知时。get request没有任何效果。我在safari和xcode开发工具上也看不到任何javascript警告。