zoukankan      html  css  js  c++  java
  • 面试常见技术问题

    ---------       JQ        ---------

    1.jq 常见选择器?
    ,号选择器,分组选择器。空格,祖父选择器。>大于号,父子选择器。+号选择器,紧接下一个兄弟选择器。~号,元素之后所有的 siblings 元素。
    :first,:last,:not,:first-child,:last-child,:animated.:checked
    2.jQuery 插件实现方式,分别介绍?
    jQuery.fn.extend 封装直接在$下面的方法,就是根下面,
    扩展 jQuery 元素集来提供新的方法(通常用来制作插件)。
    $.extend 用来在 jQuery 命名空间上增加新函数。用一个或多个其他对象来扩展一个对象,返回被扩展的对象
    批量的方法用 fn,静态的用$.extend(),不建议用扩展到根下面。
    3.bind 和 live 的区别?
    live 方法其实是 bind 方法的变种,其基本功能就同 bind 方法的功能是一样的,都是为一个元素绑定某个事件,但是 bind 方法只能给当前存在的元素绑定事件,对于事后采用 JS 等方式新生成的元素无效,而 live 方法则正好弥补了 bind 方法的这个缺陷,它可以对后 生成的元素也可以绑定相应的事件。
    4.js 和 jq 如何转换?
    jQuery 对象是通过 jQuery 包装 DOM 对象后产生的对象。jQuery 对象是 jQuery 独有
    的,其可以使用 jQuery 里的方法,但是不能使用 DOM 的方法;例如:
    $("#img").attr("src","test.jpg"); 这里的 $("#img")就是 jQuery 对象。
    DOM 对象就是 Javascript 固有的一些对象操作。DOM 对象能使用 Javascript 固有的方法,但是不能使用 jQuery 里的方法。例如:document.getElementById("img").src=“test.jpg";这里的 document.getElementById("img") 就是 DOM 对象。
    $("#img").attr("src","test.jpg"); 和 document.getElementById("img").src="test.jpg"; 是等价的,是正确的,但是 $("#img").src="test.jpg";或者document.getElementById("img").attr("src","test.jpg"); 都是错误的。
     
    DOM 对象转成 jQuery 对象
    对于已经是一个 DOM 对象,只需要用 $() 把 DOM 对象包装起来,就可以获得一个jQuery 对象了,$(DOM 对象)
    如: var v=document.getElementById("v"); //DOM 对象
    var $v=$(v); //jQuery 对象
    转换后,就可以任意使用 jQuery 的方法。
     
    jQuery 对象转成 DOM 对象
    两种转换方式讲一个 jQuery 对象转换成 DOM 对象: [index] 和.get(index);
    (1) jQuery 对象是一个数据对象,可以通过 [index] 的方法,来得到相应的 DOM 对象。
    如: var $v=$("#v"); //jQuery 对象
    var v=$v[0]; //DOM 对象
    alert(v.checked); //检测这个 checkbox 是否被选中
    (2) jQuery 本身提供,通过.get(index) 方法得到相应的 DOM 对象
    如:var $v=$("#v"); //jQuery 对象
    var v=$v.get(0); //DOM 对象 ( $v.get()[0] 也可以 )
    alert(v.checked); //检测这个 checkbox 是否被选中
    通过以上方法,可以任意的相互转换 jQuery 对象和 DOM 对象,需要再强调的是:
    DOM 对象才能使用 DOM 中的方法,jQuery 对象是不可以使用DOM中的方法。

    ---------      JS     ---------

    1. BFC是什么?

    BFC(块级格式化上下文),一个创建了新的BFC的盒子是独立布局的,盒子内元素的布局不会影响盒子外面的元素。在同一个BFC中的两个相邻的盒子在垂直方向发生margin重叠的问题

    BFC是指浏览器中创建了一个独立的渲染区域,该区域内所有元素的布局不会影响到区域外元素的布局,这个渲染区域只对块级元素起作用。

    2. Doctype作用? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?

        1)、<!DOCTYPE> 声明位于文档中的最前面,处于 <html> 标签之前。告知浏览器的解析器,用什么文档类型 规范来解析这个文档。

        2)、严格模式的排版和 JS 运作模式是  以该浏览器支持的最高标准运行。

        3)、在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。

        4)、DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现

    3. 行内元素有哪些?块级元素有哪些? (void)元素有那些?

    1)CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值,比如div默认display属性值为“block”,成为“块级”元素;span默认display属性值为“inline”,是“行内”元素。  

    2)行内元素有:a b span img input select strong(强调的语气) 块级元素有:div ul ol li dl dt dd h1 h2 h3 h4…p  

    3)知名的空元素:      <br><hr><img><input><link><meta>鲜为人知的是: <area><base><col><command>

    <embed><keygen><param><source><track><wbr>

    4. CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算? CSS3新增伪类有那些?

        *   1.id选择器( # myid)

            2.类选择器(.myclassname)

            3.标签选择器(div, h1, p)

            4.相邻选择器(h1 + p)

            5.子选择器(ul > li)

            6.后代选择器(li a)

            7.通配符选择器( * )

            8.属性选择器(a[rel = "external"])可扩展的属性值

            9.伪类选择器(a: hover, li: nth - child)link vitetd hover active

        *   可继承: font-size font-family color, UL LI DL DD DT;

        *   不可继承 :border padding margin width height ;

        *   优先级就近原则,样式定义最近者为准;

        *   载入样式以最后载入的定位为准;

    优先级为:

           !important >  id > class > tag  

           important 比 内联优先级高

    CSS3新增伪类举例:

        p:first-of-type 选择属于其父元素的首个 <p> 元素的每个 <p> 元素。

        p:last-of-type  选择属于其父元素的最后 <p> 元素的每个 <p> 元素。

        p:only-of-type  选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。

        p:only-child    选择属于其父元素的唯一子元素的每个 <p> 元素。

        p:nth-child(2)  选择属于其父元素的第二个子元素的每个 <p> 元素。

        :enabled、:disabled 控制表单控件的禁用状态。

        :checked,单选框或复选框被选中。

  • 相关阅读:
    Jmater (十七) 命令行(非GUI)模式详解(二) 执行代理设置
    Jmater (十七) 命令行(非GUI)模式详解(一) 执行、输出结果及日志、简单分步执行脚本
    Jmeter (十六) IF控制器
    Jmeter (十五)用户定义变量&用户参数
    JMeter (十四) Cookie & Session
    Jmeter (十三)调试工具之--HTTP Mirror Server(转载)
    Jmeter (十二)调试工具之--Debug Processor(转载)
    Jmeter (十一)调试工具之--Debug Sampler(转载)
    Jmeter (十)脚本增强_关联
    Shell 变量的截取
  • 原文地址:https://www.cnblogs.com/FD-1909/p/11961363.html
Copyright © 2011-2022 走看看