JS:在$(document).ready中创建函数和声明的正确方法

时间:2014-12-14 21:22:08

标签: javascript jquery

当我向jQuery代码添加声明时,我的jQuery代码停止正常工作,单独工作正常。

这是我的整个代码,没有第一行正常工作:

$(document).ready(function() {

  /////////////////////////Without this works fine
  $('[rel=popover]').popover({
    title: 'title',
    placement: 'bottom',
    trigger: 'hover'
  });
  //////////////////////////

//SEARCH PAGE, STICKY SIDEBAR
if (!!$('.sticky').offset()) { // make sure ".sticky" element exists
    $(window).scroll( function() { // scroll event
      var windowTop = $(window).scrollTop(); // returns number 
      if (windowTop > 60){
        $('.sticky').css({ position: 'fixed', top: '60px' }); //60px (header's height)
      } else {
        $('.sticky').css('position','static');
      }
    });
  }

//PARALLAX ON HOMEPAGE
var currentX = '';
var movementConstantCity = .03;
var movementConstantCars = .01;
$(document).mousemove(function(e) {
    if(currentX == '') currentX = e.pageX;
    var xdiff = e.pageX - currentX;
    currentX = e.pageX;
    $('.parallax_city').each(function(i, el) {
        var movement = (i + 1) * (xdiff * movementConstantCity);
        var newX = $(el).position().left + movement;
        $(el).css('left', newX + 'px');
    });
    $('.parallax_cars').each(function(i, el) {
        var movement = (i + 1) * (xdiff * movementConstantCars);
        var newX = $(el).position().left + movement;
        $(el).css('left', newX + 'px');
    });
});

//SHOW FORM ON PUBLISH PAGE
$(".pricing_table ul").click(function(e) {
    if($(".form_details").css('display') === "none") {
        $(".form_details").show();
        $(".preamble").text("Texto!");
        var body = $("html, body");
        body.animate({scrollTop:0}, '400', 'swing');
        e.preventDefault();
    }
});

//SELECTED PACKAGE ON PUBLISH PAGE
$(".pricing_table ul#package").click(function () { 
$(this).addClass('selected').siblings().removeClass("selected");
     if($(".pricing_table ul#package").hasClass("selected")) {
        $(".pricing_table ul#package .highlight").hide();   
     }
});

});

如何正确包含第一行?

1 个答案:

答案 0 :(得分:0)

回答你的问题,你如何做到这一点是正确的方法。问题是为什么它不起作用? 我将首先包装一个try / catch并检查异常。我的猜测是加载bootstrap.js

有问题



   try {
     $('[rel=popover]').popover({
       title: 'title',
       placement: 'bottom',
       trigger: 'hover'
     });
   } catch (x) {
     console.log(x);
   }