在IE 9中显示错误

时间:2012-06-15 21:31:50

标签: jquery ruby-on-rails ruby-on-rails-3 twitter-bootstrap

我即将推出的网页位于www.remindeals.com。

点击“进入第一个”按钮并提交电子邮件(做一个像abc@abc.com或其他任何虚假的电子邮件)时,Modal弹出窗口中存在一个错误,其中背景没有显示,只有社交图标在盘旋时出现。这是一个使用bootstrap构建的rails网站。

此问题仅发生在IE 9中..任何人都有任何线索?

以下是相关的jquery,不确定这是否有帮助。

$('document').ready(function() {

  // display validation errors for the "request invitation" form
  if ($('.alert-error').length > 0) {
    $("#request-invite").modal('toggle');
  }

  // use AJAX to submit the "request invitation" form
  $('#invitation_button').live('click', function() {
    var email = $('form #user_email').val();
    var password = $('form #user_password').val();
    var dataString = 'user[email]='+ email + '&user[password]=' + password;
    $.ajax({
      type: "POST",
      url: "/users",
      data: dataString,
      success: function(data) {
        $('#request-invite').html(data);
        loadSocial();
      }
    });
    return false;
  });

})

// load social sharing scripts if the page includes a Twitter "share" button
function loadSocial() {

    //Twitter
    if (typeof (twttr) != 'undefined') {
      twttr.widgets.load();
    } else {
      $.getScript('http://platform.twitter.com/widgets.js');
    }

    //Facebook
    if (typeof (FB) != 'undefined') {
      FB.init({ status: true, cookie: true, xfbml: true });
    } else {
      $.getScript("http://connect.facebook.net/en_US/all.js#xfbml=1", function () {
        FB.init({ status: true, cookie: true, xfbml: true });
      });
    }

    //Google+
    if (typeof (gapi) != 'undefined') {
      $(".g-plusone").each(function () {
        gapi.plusone.render($(this).get(0));
      });
    } else {
      $.getScript('https://apis.google.com/js/plusone.js');
    }
}

谢谢!

2 个答案:

答案 0 :(得分:1)

$('document').ready(function() { <-- Document isn't supposed to be in quotes

正确的方式是这样的

$(document).ready(function() { //code here });

答案 1 :(得分:0)

当您在IE中的输入字段中按thankyou.html时,您的页面会提交到Enter,而不是使用社交统计信息打开模式。这是因为在输入字段中按#invitation_button提交时,click的{​​{1}}事件未被触发。

将文字Enterinput按钮包裹在submit中,然后替换:

<form/>

使用:

$('#invitation_button').live('click', function() {

或者,正如您使用的是jQuery 1.7.2:

$('form').live('submit', function() {

您也可以考虑使用CDN托管的jQuery副本,而不是在您的网站上托管它,因为它为您的用户提供了更好的缓存和加载时间。

您网页的其余部分似乎与我的IE中的FF / Chrome相同。