在javascript中执行任意html代码的方法示例解读

今天码代码中偶然发现有一种情况javascript的eval()函数无法执行html代码,比如:


代码如下:

<script>eval('<li>hehe</li>')</script>

代码是不会执行的,但是改为如下就可以执行了:


代码如下:

<script>eval('</script><li>hehe</li><script>')</script>

(0)

相关推荐

  • JavaScript改变HTML元素的样式改变CSS及元素属性

    改变 HTML 样式 如需改变 HTML 元素的样式,请使用这个语法: 复制代码 代码如下: document.getElementById(id).style.property=new style <p id="p2">Hello World!</p> <script> document.getElementById("p2").style.color="blue"; </script> JS改变

  • 讨论html与javascript在浏览器中的加载顺序问题

    前一阵子横扫了javascript,当时自我感觉良好.现在一想,又觉得没什么.今天的任务是把asp.net ajax中客户端页面生命周期那一章研究完.然而,因为这一章的内容使我产生了一些迷惑.这些疑惑在书中都没有只字提及. 一.html页面的详细加载过程是什么呢?页面元素在加载时的优先级是什么? 二.javascript的作用域.变量的作用域.不同脚本段之间的关系? 三.html页面的生命周期? 这些问题真的打中了我的死穴.不了解这些,我就无法透过asp.net ajax的框架看到其底层原理.只

  • JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE)

    HTML元素,属性已经十分丰富了.但是,在某些场合下,也会显得捉襟见肘,这时候自定义属性就发挥了十分关键的作用. Html元素的自定义属性,使用起来,十分方便,例如: <input type="button" value="Click Me, Baby!" /> 假设我们现在需要限制,这个按钮,只能点击2次,然后就失效了. 通常的实现方式,是可以利用全局变量的形式来记录点击次数,但我们这里用自定义属性来实现这个功能,展示一下自定义属性的优势:我们对上面的

  • javascript操作html控件实例(javascript添加html)

    复制代码 代码如下: //下拉列表的填充 _showSchools: function (data) { //data代表是一个数据对象 var mySelect = document.getElementById("selectSchools"); //获取下拉框                mySelect.options.length = 0;                //将option添加到select标签里面                for (var index

  • Javascript小技巧之生成html元素

    Javascript 生成 HTML元素的方法在本文中介绍2种,第一种是比较正规的创建元素方法,第二种是利用javascript中的write()方法直接写出html元素. 方法一: 复制代码 代码如下: //createElement()创建input元素到obj对象中   var obj = document.createElement('input');   //选择要生成地点的前一个元素   var before = document.getElementById('before'); 

  • 使用javascript过滤html的字符串(注释标记法)

    复制代码 代码如下: function DeleteHtmlFromStartToEnd(str, begin, end) {            str = str.replace(begin + end, "");            if (str.indexOf(begin) == -1) {//没找到                return str;            }            var substr = str.substring(str.inde

  • javascript打印html内容功能的方法示例

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

  • Javascript获取HTML静态页面参数传递值示例

    给大家看一下我的代码 只要把这些代码嵌入到页面文件即可 例一 利用正则表达式来获取 复制代码 代码如下: var LocString = String(window.document.location.href); function getQueryStr(str) { var rs = new RegExp("(^|)" + str + "=([^&]*)(&|$)", "gi").exec(LocString), tmp; i

  • 在javascript中执行任意html代码的方法示例解读

    今天码代码中偶然发现有一种情况javascript的eval()函数无法执行html代码,比如: 复制代码 代码如下: <script>eval('<li>hehe</li>')</script> 代码是不会执行的,但是改为如下就可以执行了: 复制代码 代码如下: <script>eval('</script><li>hehe</li><script>')</script>

  • javascript中直接写php代码的方法

    一.在javascript中嵌入php代码javascript若是通过js文件包含进来的,那么js文件中也可以直接写php代码,只不过包含js文件是扩展名要改成php,如: 复制代码 代码如下: <script herf="js/demo.js.php"></script> 二.javascript函数参数的默认值c语言中可以通过这样来设置默认参数: 复制代码 代码如下: void foo(int a, int b = 1, bool c = false); 但

  • 深入理解JavaScript中的语法和代码结构

    概述 所有编程语言都必须遵守特定的规则才能运行. 确定编程语言的正确结构的这组规则称为语法. 许多编程语言主要由具有语法变化的类似概念组成. 在本教程中,我们将介绍JavaScript语法和代码结构的许多规则和约定. 功能性和可读性 在开始使用JavaScript时,功能性和可读性是关注语法的两个重要原因. 有些语法规则是JavaScript功能所必需的.如果不遵循它们,控制台将抛出一个错误,脚本将停止执行. 考虑"Hello,World!"中的语法错误.程序: // Example

  • 如何在JavaScript中运行.NET Core代码详情

    目录 一.前言 二.DotNetJS 三.Demo 1. 创建项目 2. 实现C#代码 3. 实现JS代码 4. 运行效果 四.结论 一.前言 在.NET Core中运行JavaScript代码,目前已经有很多实现方案. 但是,如果你希望在纯JavaScript环境中运行.NET Core代码呢? 那么,DotNetJS可能对你有所帮助. 二.DotNetJS DotNetJS可以将C#项目编译为与任何环境兼容的单文件JavaScript库,无论是Web浏览器,Node.js还是自定义限制空间,

  • JavaScript 中判断变量是否为数字的示例代码

    简介 JavaScript 是一种动态类型语言,这意味着解释器在运行时确定变量的类型.实际上,这也允许我们在相同的代码中使用相同的变量来存储不同类型的数据.如果没有文档和一致性,我们在使用代码时并不总是知道变量的类型. 当我们期望一个变量是数字时,对字符串或数组进行操作可能会在代码中导致奇怪的结果.在本文中,我们将会介绍一些判断变量是否为数字的函数. 像"10"之类的数字的字符串不应被接受.在JavaScript中,诸如NaN,Infinity和-Infinity之类的特殊值也是数字类

  • JavaScript中layim之整合右键菜单的示例代码

    一. 效果演示 1.1.好友右键菜单: 1.2.分组右键菜单: 1.3.群组右键菜单: 二. 实现教程 接下来我们以好友右键菜单为例,实现步骤如下: 2.1.绑定好友右击事件: /* 绑定好友右击事件 */ $('body').on('mousedown', '.layim-list-friend li ul li', function(e){ // 过滤非右击事件 if(3 != e.which) { return; } // 不再派发事件 e.stopPropagation(); var o

  • javascript中函数作为参数调用的方法

    本文实例讲述了javascript中函数作为参数调用的方法.分享给大家供大家参考.具体分析如下: 先来看示例: function Map(){ var obj = {}; this.put = function(key, value){ obj[key] = value; } this.eachMap = function(fn){ for(var attr in obj){ fn(attr, obj[attr]); } } } var m = new Map(); m.put('01', 'a

  • JavaScript中reduce()的5个基本用法示例

    前言 reduce()方法可以搞定的东西,for循环,或者forEach方法有时候也可以搞定,那为啥要用reduce()?这个问题,之前我也想过,要说原因还真找不到,唯一能找到的是:通往成功的道路有很多,但是总有一条路是最捷径的,亦或许reduce()逼格更高... 语法 arr.reduce(callback,[initialValue]) reduce()方法对数组中的每一个元素执行一个reducer函数(由你提供),从而得到一个单一的输出值. reduce() 方法将一个数组中的所有元素还

  • JavaScript中async,await的使用和方法

    JS中 async函数和await 关键字 function hellworld() { return "您好!美好世界!"; } console.log(hellworld()); // 您好!美好世界! async function asyHellworld() { return "您好!美好世界!"; } console.log(asyHellworld()); // Promise { '您好!美好世界!' } 普通函数 hellworld 将简单地返回字符

  • JavaScript中检测数据类型的四种方法

    目录 1. typeof 2. instanceof 3. constructor(构造函数) 4. Object.prototype.toString.call() 前言:在介绍检测数据类型的方法之前,先说说JavaScript中数据类型有哪些吧~ JS数据类型主要分为两大类:基本数据类型和引用数据类型 基本数据类型:number.string.boolean.null.undefined.symbol(es6)引用数据类型:object(array.function.date...) 数据类

随机推荐