前端冷知识

简介: Html控制台输入下面代码,可以编辑整个网页。document.body.contentEditable='true'处理 url 字符串是比较麻烦的,可以使用 a 标签自动解析 url,下面是一个比较完善的处理方法。

Html

  • 控制台输入下面代码,可以编辑整个网页。
document.body.contentEditable='true'
  • 处理 url 字符串是比较麻烦的,可以使用 a 标签自动解析 url,下面是一个比较完善的处理方法。

function urlParse(url, key) {
  var a = document.createElement('a')
  a.href = url
  var result = {
    href: url,
    protocol: a.protocol.replace(':', ''),
    port: a.port,
    query: a.search,
    params: (function(){
      var ret = {}, centArr,
        seg = a.search.replace(/^\?/, '').replace(/^\?/,'').split('&')
      for (i = 0, len = seg.length; i < len; i ++) {
        if (!seg[i]) { continue }
        centArr = seg[i].split('=')
        ret[centArr[0]] = centArr[1]
      }
      return ret
    }()),
    hash: a.hash,
    file: (a.pathname.match(/\/([^\/?#]+)$/i) || [, ''])[1],
    path: a.pathname.replace(/^([^\/])/, '/$1'),
    relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [, ''])[1],
    segments: a.pathname.replace(/^\//, '').split('/')
  }
  a = null
  return key ? result[key] : result
}

// H5 有新的 API URL 也可以快速的处理一个链接 
var url = new URL('https://www.baidu.com/')
url.hash
...
  • 带有 Id 属性的元素,会创建全局变量

// html
<div id="test"></div>

// js
console.log(test)
// => <div id="test"></div>
  • 设置 script 标签 type=’text’,然后使用 script 标签存储数据,可以轻松的取到文本

// html
<script type="text" id="text">hello world !</script>

// js
var text = document.getElementById('text').innerHTML
// text => hello world !
// 空格换行等缩进也会被获取
  • 在 body 标签中加入可见可编辑的 style 标签可以做一个实时编写样式的输入框

<body>
  <style style="display:block; position: fixed;" contentEditable>
    body { background: red; }
  </style>
</body>

CSS

  • 文字模糊效果
color: transparent;
text-shadow: #111 0 0 5px;

这里写图片描述

  • 纯 CSS 实现长宽成比例且自适应屏幕的元素
// html
<div class="wrap">
    <div calss="content">内容</div>
</div>

// css
.wrap { 
    position: relative; 
    width: 50%;
    padding: 0 0 50% 0; }
.content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  • 彩色图片加黑白滤镜效果
filter: grayscale(100%);
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
  • 优化文本的显示效果
html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

JavaScript

  • 生成随机字符串
function generateRandomAlphaNum(len) {
    var rdmString = "";
    for (; rdmString.length < len; rdmString += Math.random().toString(36).substr(2));
    return rdmString.substr(0, len);
}
  • 浮点数快速取整
(12.4 / 4.13) | 0
// => 3
~~(12.4 / 4.13)
// => 3
  • 两个变量值的交换
var a=1, b=2
a=[b, b=a][0]

原文链接:http://blog.csdn.net/qq_25243451/article/details/79269281

目录
相关文章
|
9月前
|
传感器 机器学习/深度学习 编解码
NEON LiDAR 数据导出的地表数字模型 (DSM) 和地形数字模型 (DTM)1m分辨率
NEON LiDAR 数据导出的地表数字模型 (DSM) 和地形数字模型 (DTM),分辨率为1米。DSM 包含地表特征(植被和建筑物),DTM 则为裸地高程信息。数据覆盖2013年至今,适用于生态与地形研究。提供 DTM 和 DSM 两个波段,值范围为0-3500米,单位为米。数据遵循 CC0 1.0 协议,无版权限制,鼓励广泛使用。
215 66
|
移动开发 前端开发 JavaScript
做前端技术方案选型的时候,你是怎么做决策的?
做前端技术方案选型的时候,你是怎么做决策的?
265 0
|
11月前
|
存储 缓存 监控
Java中的线程池深度解析####
本文深入探讨了Java并发编程中的核心组件——线程池,从其基本概念、工作原理、核心参数解析到应用场景与最佳实践,全方位剖析了线程池在提升应用性能、资源管理和任务调度方面的重要作用。通过实例演示和性能对比,揭示合理配置线程池对于构建高效Java应用的关键意义。 ####
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
12月前
|
人工智能 自动驾驶 物联网
探索未来:2024年的十大技术趋势
【10月更文挑战第3天】探索未来:2024年的十大技术趋势
1447 0
|
数据安全/隐私保护
|
自然语言处理 搜索推荐 数据挖掘
电商 API 接口:电商领域的强大技术引擎
在数字化浪潮中,电商API接口作为连接系统的桥梁,已成为电商市场的核心技术引擎。它通过实时库存信息、多样化支付等功能提升用户体验,支持自动化订单处理,促进数据流通与分析,并允许定制化开发,集成移动应用,从而增强系统灵活性和业务竞争力。
|
安全 Java 数据安全/隐私保护
使用Java实现安全的用户身份验证与授权
使用Java实现安全的用户身份验证与授权
|
传感器 人工智能 自然语言处理
AI智能家居系统如何实现自动化控制?
【6月更文挑战第23天】AI智能家居系统如何实现自动化控制?
596 7
|
机器学习/深度学习 编解码 运维
在12个视频理解任务中,Mamba先打败了Transformer
【5月更文挑战第13天】Mamba,一种状态空间模型,在12个视频理解任务中超越Transformer,显示其在视频编码、解码、生成和分类等角色上的高效性能。研究发现Mamba在视频分类任务中的准确率超出Transformer 2%,并在视频描述生成和问答任务中表现出色。然而,Mamba的训练复杂,需要更多资源,且在处理复杂场景时效果不佳。[查看论文:https://arxiv.org/abs/2403.09626]
318 2