django开源项目bootcamp核心js-feeds.js分析(1)

发布时间:2020-07-14 18:22:30 作者:007xy易123
来源:网络 阅读:671

本文比较基础的分析了该项目的js文件,大神就可以忽略了

首先打开feeds.js就可以看见整个文件包裹在下面这样的一个函数中

$(function () {

.........

.........

}

上面这个$(function () {};是$(document).ready(function(){});的简写,而$(document).ready里面的代码是在整个页面内容都加载完才执行的。好了,下面进入正题:

var page_title = $(document).attr("title");

/*上面这一句定义变量page_title,并且取得全局属性title的值赋给它*/

  function hide_stream_update() {

    $(".stream-update").hide();

    $(".stream-update .new-posts").text("");

    $(document).attr("title", page_title);

  };

/*定义无参函数hide_stream_update,前两行选择器取指定类分别执行hide()隐藏和text()取得对应属性的文本值,最后一个又用到了attr(""),但这次是给属性title赋后面的值*/

  $("body").keydown(function (evt) {

    var keyCode = evt.which?evt.which:evt.keyCode;

    if (evt.ctrlKey && keyCode == 80) {

      $(".btn-compose").click();

      return false;

    }

  });

/*上面这段定义了在body中keydown按键按下后产生的事件*/

$("#compose-form textarea[name='post']").keydown(function (evt) {

    var keyCode = evt.which?evt.which:evt.keyCode;

    if (evt.ctrlKey && (keyCode == 10 || keyCode == 13)) {

      $(".btn-post").click();

    }

  });

/*上面这段选择器选择了id=compose-form和name=post的文本框,规定了按键事件*/

  $(".btn-compose").click(function () {

    if ($(".compose").hasClass("composing")) {

      $(".compose").removeClass("composing");

      $(".compose").slideUp();

    }

    else {

      $(".compose").addClass("composing");

      $(".compose textarea").val("");

      $(".compose").slideDown(400, function () {

        $(".compose textarea").focus();

      });

    }

  });

/*这是一个点击事件,进入后有一个判断含有.compose的元素是否也含有composing类,如果有进入下面操作,第一个就是删除该元素中的composing类,同时该元素向上滑动。如果没有则执行else里面的操作,首先是添加类,然后用val方法设置选定元素中的值为空,最后向下滑动指定大小后聚焦*/

  














推荐阅读:
  1. Django的缓存(1)
  2. 开源项目 -- HierarchyViewer for iOS(1)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js分析

上一篇:Neutron与Nova的网络逻辑关系---Neutron节点网络逻辑关系(二)

下一篇:在rhel6上安装oracle11g时遇到个小问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》