【求助】JS为什么会出现这种情况?

如图,我的疑问在图中描述的很清楚
图片说明
图片说明
图片说明
上图是第一个疑问:为什么 onclick=a( ); 和 onclick=function( ) { a ( ) };的效果会截然不同?
图片说明
这是第二个疑问,为什么在Dreamweaver 2017中这个错误无法消除?

0

4个回答

links[0].onclick=myclick; 和links[0].onclick=myclick();这个是有区别的,
links[0].onclick=myclick; 是将按钮绑定一个点击事件,事件会触发相应的函数,所以在js执行的到这行代码的时候并不会执行myclick函数的代码,
而links[0].onclick=myclick();则不同,**你可以理解为将按钮绑定到一个点击事件执行的结果上去了**,所以当js执行到这段代码时就执行了myclick这段
函数的代码,不管你是否点击该按钮,都会执行,所以就出现了你这样的结果。

0
0

在页面2中,添加事件的语句改为 links[0].onclick=myclick; 加上括号意味着直接执行方法

0

你上面的报错是指缺乏严格模式声明,至于严格模式跟普通模式有什么区别,你可以看下这个

https://www.cnblogs.com/jiqing9006/p/5091491.html

出现这个问题,应该是Dreamweaver本身的问题,因为现代浏览器在非严格模式下也是可以正常工作的。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
为什么会有闭包?
(迁移至博客园,原文地址) 之前一直认为写博客是个可有可无的事情,前天一个电话面试问得我手足无措,发现很多以前知道的东西现在只能说出个大概,很久没复习的缘故吧。而转身去看的时候,又不知从何看起,顿时觉得有写博客的必要。与日记不同,说不定路过的哪位大神会指出我的错误呢,有趣的讨论还可以加深理解。什么是闭包?这个定义一俩句话说出来还真不容易,而且晦涩。 从字面词来讲的话就是一个包裹起来的封闭的东西。百
为什么会出现这种情况
[code=java]class Resourcern String name;rn String sex;rnrnrnclass input implements Runnablern Resource r;rn rn public input(Resource r) rn super();rn this.r = r;rn rn rn public void run()rn int x=0;rn while(true)rn synchronized (r) rn if(x==0)rn r.name="Flank";rn r.sex="nan"; rn rn else rn r.name="诺娃";rn r.sex="女女女女女女";rn rn x=(x+1)%2; rn rn rn rnrnclass output implements Runnablern Resource r;rn rn public output(Resource r) rn super();rn this.r = r;rn rnrn public void run()rn while(true)rn //synchronized (r) rn System.out.println(r.name+"......."+r.sex);rn //rn rn rn rnrnrnpublic class ResourceDemo rn public static void main(String[] args) rn Resource r=new Resource();rn input in=new input(r);rn output out=new output(r);rn rn Thread t1=new Thread(in);rn Thread t2=new Thread(out);rn t1.start();rn t2.start();rn rnrnrn[/code]rnrn我知道如果output类里也把输出同步了进去,那么运行结果不会出现男女安全问题,可我把input类里同步了,那么就不会出现覆盖了姓名而不覆盖性别的情况,那为什么还会有安全问题呢?
为什么会出现这种情况?
我用了TOOLBUTTON的CAPTION属性但在按钮上看不到字符,这为什么?rn我应该怎么做?rn请各位高手赐教!
为什么会出现这种情况??
你试试向一个新的二进制文件中写入0A然后看看写进去的是什么就行,也就是用stream打开一个文件,rnrnFILE *source=fopen(source file name, "r+b");rnrn然后随便用fputc(),fwrite()等等写入流的函数,随便写入整型的,字符的,长整的,只要里面任一个字节有0A(也就是10)在程序运行结束后就会变成0D0A,简直是神奇了。
为什么会出现死锁
今天在阅读>时,细细的阅读了多线程的编程,看完这一章节,思考了很多。 我在思考一个网站如何可以抵挡得住大的迸发量,我先罗列我应该会设计的方案,然后再分析其中实现应该注意的地方: 首先如果数据量很大的话,我们是要分散请求的,也就是需要服务器来联合作战,当然这里我们就需要有一个好的轮询的算法,不然会出现数据无法保持一致而导致程序中隐藏bug,所以说,考虑的方面不一样写出的代码时完全
2019.6.19 java基础(二)
本文来自于牛客网: https://www.nowcoder.com/tutorial/94/ae05554a3ad84e42b6f9fc4d52859dc4 1.请你谈谈大O符号(big-O notation)并给出不同数据结构的例子 考察点:JAVA notation 参考回答: 大O符号描述了当数据结构里面的元素增加的时候,算法的规模或者是性能在最坏的场景下有多么好。...
Java基础
请你说说Java和PHP的区别? 考察点:Java特性 参考回答: PHP暂时还不支持像Java那样JIT运行时编译热点代码,但是PHP具有opcache机制,能够把脚本对应的opcode缓存在内存,PHP7中还支持配置opcache.file_cache导出opcode到文件.第三方的Facebook HHVM也支持JIT.另外PHP官方基于LLVM围绕opcache机制构建的Zend JIT分...
为什么会出现这种情况??“Table is ReadOnly”
我在程序重加入了一个Query1 ,然后设置其属性为RequestLive=True,下面是给Query1的SQl。Text赋值,rnsql.text:='select id as a,id1 as b,id2 as c id3 as d,name ,time from 表A'rn然后设置其属性为Active:=True,rn上面是在窗体的OnCreate 事件里面描述的,但是一执行这个Sql的时候,就出现,Table is readonly ,这个是什么问题呢??'
为什么VS 2010 会出现这种情况
[img=https://img-bbs.csdn.net/upload/201409/10/1410359349_515966.jpg][/img]
ajax提交为什么会出现这种情况?
就是在本页提交并且在本页显示 但是为什么提交后在本页把原来的内容都复制了一份显示出来?而且返回的明明只有$a变量啊 为什么会重复出现页面的内容呢?rn[img=https://img-bbs.csdn.net/upload/201702/26/1488073957_477749.png][/img]rn[img=https://img-bbs.csdn.net/upload/201702/26/1488073975_98529.png][/img]rn[code=php]rnrnrnrn rn rn rnrnrnrn提交rn rnrnrnrnrn[/code]
不明白为什么会出现这种情况
#includernvoid Swap(char *vp1,char *vp2,int width)rnrn char tmp;rn if(vp1!=vp2)rn while(width--)rn tmp=*vp1;rn *vp1++=*vp2;rn *vp2++=tmp;rn rn rnrnint main()rnrn int array_a[]=1,2,3,4,5,78,88;rn int array_b[]=6,7,8,9,10,;rn int i;rn Swap((char*)array_a,(char*)array_b,sizeof(array_a));rn for(i=0;i
求教,为什么会出现这种情况
[img=https://img-bbs.csdn.net/upload/201612/22/1482373497_417421.png][/img]
编译时为什么会出现这种情况呢?
我在vc.net2003中编译我的程序,但却出现了编译错误,具体它是这样子说的:rn正在编译...rn文本查询系统.cpprnd:\学习与科技\作业\文本查询系统\文本查询系统.cpp(380) : fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾rn这里:在查找预编译头指令时遇到意外的文件结尾是什么意思呢?是不是程序本身有问题呢?
为什么会出现这种情况??高手帮忙!!
function window_onbeforeunload() rnif (window.confirm("确定要关闭吗?")==true)rnrnreturnrnrnrn在执行的时候,为什么在点了取消后,系统又弹出一个“确实要离开该页面吗?false 按确定继续,或按取消留在当前页面。”的提示信息??可以不要这个提示信息吗?直接点取消就可以了!
为什么会出现这种情况呢?
SQL> select username from v$session;rnUSERNAMErn------------------------------rnrnrnrnrnrnrnSYSTEMrn已选择7行。rnSQL>rnrn上面的情况是怎么回事啊,只显示了了SYSTEM一个用户,但是系统却说选择了7行。rn
为什么会出现这种情况?关于动态链接库
ldd Testrnrn[color=#FF0000]libaprutil-1.so.0 => (file not found)[/color]rnlibapr-1.so.0 => /chenbo/ActiveMQ/lib//libapr-1.so.0rnlibrt.so.1 => /lib/librt.so.1rnlibcrypt_i.so.1 => /usr/lib/libcrypt_i.so.1rnlibpthread.so.1 => /lib/libpthread.so.1rnlibdl.so.1 => /lib/libdl.so.1rnlibexpat.so.0 => /usr/sfw/lib/libexpat.so.0rnlibstdc++.so.6 => /usr/sfw/lib/libstdc++.so.6rnlibm.so.2 => /lib/libm.so.2rnlibgcc_s.so.1 => /usr/sfw/lib/libgcc_s.so.1rnlibc.so.1 => /lib/libc.so.1rn[color=#FF0000]libaprutil-1.so.0 => /usr/local/aprutil//lib/libaprutil-1.so.0[/color]rnlibuuid.so.1 => /lib/libuuid.so.1rnlibsendfile.so.1 => /lib/libsendfile.so.1rnlibsocket.so.1 => /lib/libsocket.so.1rnlibnsl.so.1 => /lib/libnsl.so.1rnlibaio.so.1 => /lib/libaio.so.1rnlibmd5.so.1 => /lib/libmd5.so.1rnlibgen.so.1 => /lib/libgen.so.1rnlibmp.so.2 => /lib/libmp.so.2rnlibscf.so.1 => /lib/libscf.so.1rnlibdoor.so.1 => /lib/libdoor.so.1rnlibuutil.so.1 => /lib/libuutil.so.1rn/platform/SUNW,Sun-Fire-V490/lib/libc_psr.so.1rn/platform/SUNW,Sun-Fire-V490/lib/libmd5_psr.so.1rnrn注意红色标注部分,一个动态链接库为何会寻找两次,而且第二次寻找成功,第一次失败还会列出来?rn而且/usr/local/aprutil//lib/目录并不在LD_LIBRARY_PATH中,ldd是怎么找到该目录的呢?
为什么会出现这种情况(串口通讯)?
unix下,串口数据接收程序,使用read函数来读取数据,发送方一次发送100左右字节数据,但接收程序不能一次接收完毕,而是分为几次来接收,每次只能读取4(/6/8/不等)字节数据,不知道为什么?
急!!!为什么会出现这种情况??
下边是微分方程数值解的一个程序,要求求出数值解并作出函数图象rnrnrn double * Antic=new double[40];rn double * Euler=new double[40];rn Antic[0]=1;rn Euler[0]=1;rnrn for(int i=1;i<=40;i++)rn rn Antic[i]=(5-exp(-5.5*(i*0.1)))/5.5;rn rn for(int i=1;i<=40;i++)rn rn Euler[i]=Euler[i-1]-exp(-5.5*(i*0.1));rn rnrn但是每次编译的时候总是产生异常,或是被零除,或是内存越界,但是该程序在VC6 中能够编译通过,这是为什么那??rn
这种情况为什么会出现内存泄露
[code=C/C++]rnrntypedef struct STRDESCRIPTIONrnrn string strInfo1;rn string strInfo2;rn string strInfo3;rnSTRDESCRIPTION;rnrn//定义结构体对象rnSTRDESCRIPTION m_oDescription;rnrn//向结构体中赋值rnvoid MyParser::characterDataHandler(const char *text, size_t len) rnrn if(m_DCTag == DCTIT)rn rn strncpy((char *)m_oDescription.strInfo1.c_str(),text,len);rn rn else if(m_DCTag == DCCRE)rn rn strncpy((char *)m_oDescription.strInfo2.c_str(),text,len);rn rn else if(m_DCTag == DCSUB)rn rn strncpy((char *)m_oDescription.strInfo3.c_str(),text,len);rn rnrn[/code]rnrn上面的代码确实能够将text的内容传给结构体。但是现在出现了strInfo1正常,strInfo2也正常,strInfo3异常的情况。rn通过跟踪发现在strInfo2拷贝完后strInfo3也已经有了值,分析内存地址后发现:原来strInfo2的地址是70538而strInfo3的地址是70558,也就说strInfo2只能存放32个字节,而strInfo2的长度超过32个后就放入strInfo3里,异常发生。rnrn请问,我这样定义结构体为什么分配的内存是连续空间?rn解决方法我知道是使用string的append函数,但是为什么不能使用strncpy对指针进行操作?rn谁能帮我分析这样清楚产生的原因。
大家看看为什么会出现这种情况
#include "iostream"rnusing namespace std;rnstruct projectrn int number;//学号rn char name[10];//姓名rn int english;rn int math;rn int chinese;rn struct project *next;rn;rn//struct project people;rnproject *mycreat()rnrn int m;rn struct project* head;rn struct project *p,*q;rn head=(project*)new int(sizeof(project));rn q=head;rn cout<<"请输入学生的信息"<>m; //输入-1时退出rn while(m!=-1)rn rn rn p=(project*)new int(sizeof(project));rn q->next=p;rn p->number=m;rn cout<<"请输入学生的姓名"<>p->name;rn cout<<"请输入学生的英语成绩"<>p->english;rn cout<<"请输入学生的数学成绩"<>p->math;rn cout<<"请输入学生的语文成绩"<>p->chinese;rn cout<<"请输入学号"<>m;rn q=p;rn rn q->next=NULL;rn return head; rnrnvoid print(project *head)rnrn struct project *p;rn p=head->next;rn cout<<"输出学生的信息"<number<name<english<math<chinese<next;rn while(p!=NULL);rn rn rnrnvoid find(int m,project *head)rnrn project *p;rn p=head->next;rn if(p==NULL)rn rn cout<<"此链表为空"<number!=m)&&(p!=NULL))rn rn p=p->next;rn rn rn if(p==NULL)rn rn cout<<"没有查找的这个人"<number<chinese<english<math<name<>m;rn find(m,head);rn print(head);rn if(p!=NULL)rn rn p=p->next;rn delete []p;rn rnrn用VC编译结果是对的,但是aaaa.exe遇到问题需要关闭这样的问题
没有语法错误 为什么会出现这种情况
[code=c]rn/*求平均数*/rn# include rnrnint i = 0; j = 0;rnint c[2];rnint main()rnrn void aver(int b[2][2]);//声明rn int a[2][2];rn for (i = 0; i < 2; i++)rn for (j = 0; j < 2; j++)rn scanf("%d",&a[i][j]);//输入4个数字rnrn aver(a[2][2]);//调用rn for (i = 0; i < 2; i++)rn printf("%3d",c[i]);rnrn return 0;rnrnrnvoid aver(int b[2][2])rnrn int sum = 0;rn for (i = 0; i < 2; i++)rn rn for (j = 0; j < 2; j++)rn sum = sum + b[i][j];rn c[i] = sum/2;//求平均后赋值给c数组rn sum = 0;//归零rn rnrn[/code]rn[img=https://img-bbs.csdn.net/upload/201312/23/1387812344_760148.jpg][/img]rnrn先谢谢了!
为什么会出现这种情况啊?
Microsoft VBScript 编译器错误 错误 '800a03f6' rnrn缺少 'End' rnrn/iisHelp/common/500-100.asp,行242 rnrnMicrosoft OLE DB Provider for ODBC Drivers 错误 '80004005' rnrn[Microsoft][ODBC Microsoft Access Driver] 不能更新。数据库或对象为只读。 rnrn/test24/admin/AdminOption.asp,行16rnrnrn源码如下:rnif Request.Form("oldpassword")<>"" and Request.Form("newpassword")<>"" thenrn objRS.Open "SELECT admin,Pwd FROM admin",objDC,1,3rn if objRS("Pwd")=Request.Form("oldpassword") thenrn objRS("Pwd")=Request.Form("newpassword")rn objRS.Updatern
为什么出现这种情况
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005' rnrn[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]SQL Server 不存在或访问被拒绝 rnrn/search/test.asp,行 48 rnrn我在更新数据库rn5000条左右就会出现这种情况怎么解决
为什么出现这种情况?
var x: bool;rnshowmessage(booltostr(false and x=false));rn为什么得出的是-1呢rn而false and (x=false)和false and false和x=false得出的数全为0呢。rn三个数全为false,怎么会得出-1呢。怪了。
[求助]为什么我使用迅雷下载会出现这种情况?
大家好,当我在IE页面上按鼠标右键“使用迅雷下载”后,总是会出现错误提示:rn“当前页的脚本发生错误 rn行:28 rn字符:2 rn错误:对象不支持此属性或方法rn代码:0 rnURL:file:///C:/Program%20Files/Thunder/geturl.htm rn是否继续在该页面上运行脚本程序?”rnrn这是怎么回事啊?如何解决啊?请高手帮忙!谢谢!-)
不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过包含 oveoverrideMode....
今天运行项目的时候出现了这个错误.... 查了一下解决的方法。 具体方案如下: 1、先确认安装IIS的时候有没有装Asp.Net,如果没安装的话,安装上即可。 2、IIS 采用了更安全的 web.config 管理机制,默认情况下会锁住配置项不允许更改。 用超级管理员的身份执行cmd命令,执行命令: C:\windows\system32\inetsrv\appcmd unloc...
JS 中出现undefined情况的总结
1. 调用没有定义的变量 2. 声明了变量却没有值 3. 参数定义了没有传值 4. 函数中没有写return 返回的值 就是undefined 5. 如果写了return 却没有声明值 也是undefined
为什么会产生这种情况
我访问某些普通网站时,会在该网页的上方的某个部分用英语提示我说我无权访问该网页,但是该网页的大部分区域却可以正常显示,但是如果该网页上有下载链接则无法接上.请问到底是什么原因,怎么解决.rn再就是如何使用FTP,我看了很多书也看不懂啊.rn最后就是我听说现在winamp可以放电影了,格式不清楚,有没有这回事啊
为什么会产生跨域问题?
1、浏览器限制2、跨域(域名,端口不一样都是跨域)3、XHR(XMLHttpRequest请求)同时满足三个条件才有可能产生跨域问题。解决跨域问题方案。1,从浏览器出发,允许浏览器跨域。2,从XHR(XMLHttpRequest)出发    (1)避免发生跨域。使用jsonp,由于jsonp请求是通过script的方式发送的(只有xhr的请求方式才有可能产生跨域问题),所以不会产生跨域问题。Spr...
tomcat服务程序
为什么会出现这样的情况啊,菜鸟搞一天了也没解决。
超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
这种错误分两种情况: 1. 没有设置连接池, 或者连接池设置太小, 可以设置 256 或者 512 ; data source=ip,port;initial catalog=dbName;user id=?;password=?;Max Pool Size=256;Min Pool Size=10;Pooling=true; 2. 远程连接, 网络有问题, 大部分时候可用, 偶尔中断,
Java基础-关键字-面对对象
❤1、Java基础 1、为什么重写equals还要重写hashcode 简单的说就是为了保证同一个对象,保证在equals相同的情况下hashcode值必定相同,如果重写了equals而未重写hashcode方法,可能就会出现两个没有关系的对象equals相同的(因为equal都是根据对象的特征进行重写的),但hashcode确实不相同的。 为了提高程序的效率才实现了hashcode方法,先进行...
支付宝截图反馈功能实现
最近项目中有个截图反馈的功能要做成sdk供业务方使用,类似支付宝中的功能,但是功能更复杂 实现思路: 监听截图 显示监听结果加跳转交互 对于实现监听截图的功能,前辈们已经做了很多,这里采用MediaContentObserver的解决方案,详情可查看 友情链接。 坑点梳理 部分机型一次截图,会有多次回调(vivo x9 2次) vivo Y51A 截图关键字为汉字截图 截图加载在部分机...
widestring为什么出现这种情况?
procedure TForm1,Button1Click(sender:TObject)rnvar rn ws_1:widestring;rn ws_tmp_1,ws_tmp_2:widestring;rnbeginrn ws_1:='天气';rnrn ws_tmp_1:='';rn ws_tmp_2:='';rnrn ws_1:=ws_tmp_1 + ws_tmp_2;rn edit1.text:=ws_1;rnend;rnrn为什么edit1的内容显示'天气',而不是空?rnrn谢谢!!!
为什么BDE出现这种情况?
我将SQL重装了。。。在此之前,我把一个数据库导成access,重装之后我将其恢复成sql,我用delphi的sql explorer连接这个数据库来运行程序时,程序提示不能识别,于是先看sql server。。。没有什么异常,数据能在我执行"!"操作时都显示出来!但是我换到BDE中打开Table点取一个表然后点其右边的"data"这时不能显示数据而是出现“invaild field type"为什么不能标识?我立刻查看了"text"发现表中的字段类型都不能正确显示出来而都是"null",这是为什么?sql 中没有一点错误只是做了一个连接呀?对了,我是的database driver name 是mssql!请行家指点!
JS中出现undefined与null几种常见情况
在我们执行JS的一些代码的时候,有的时候就会有一些结果出现null和undefined。我就为大家总结了一些常见的情况。undefined 在变量提升(预解析)阶段,只声明未定义,默认值就是undefined。 在JS的严格模式下(”use strict”),没有明确的主体,this指的就是undefined。 函数定义没有返回值(return或者return后面什么也不带),默认的返回值就是und
js为什么会进行变量提升(词法分析)
js代码是自上而下执行,但是在js代码执行前,会先进行词法分析。所以js自上而下的执行过程分为两个词法分析和执行两个阶段。词法分析主要有三个步骤:分析参数再分析变量的声明分析函数声明具体步骤如下:函数在运行的瞬间,生成一个活动对象(Active Object),简称AO第一步:分析形参:函数接收形式参数,添加到AO的属性,并且这个时候值为undefine,即AO.age=undefine接收实参,...
梯度消失、爆炸产生的原因以及解决方法
梯度消失和梯度爆炸的原因: 1.深度网络:神经网络的反向传播是逐层对函数偏导相乘,因此当神经网络层数非常深的时候,最后一层产生的偏差就因为乘了很多的小于1的数而越来越小,最终就会变为0,从而导致层数比较浅的权重没有更新,这就是梯度消失。 梯度爆炸就是由于初始化权值过大,前面层会比后面层变化的更快,就会导致权值越来越大,梯度爆炸的现象就发生了。 网络层之间的梯度(值大于 1.0/值小于1)重复...
为什么js会有闭包
前两天阿里的面试,gg了。不过还是收获良多。阿里的面试没有怎么聊到框架,都是原生和底层的东西比较多。 期间,对面大哥问我,为什么js会有闭包? 我一愣,说我理解的是,js的闭包其实是对js函数作用域特性的一种利用,因为函数内定义的局部变量不能被外部直接获取,而函数却可以访问到其外部作用域的变量。所以我们可以在函数内部定义一个访问局部变量的方法并将之输出给外部。在函数销毁后,通过函数输出的方法访...
举例一个你更倾向于使用抽象类,而不是接口的代码设计场景?
规范了一组相互协调的方法,其中一些方法是无需子类分别实现;而另一些方法却需要各个子类根据自己特定的状态来实现特定的功能 比如模板模式里面,流程无需子类实现,但是需要子类来实现 这个时候就可以用抽象类 举例:获取第三方数据,在一个项目中我们要获取芝麻分 抽象类的应用常见设计模式(模板模式),接口的应用常见设计模式(工厂模式、代理模式)。 ...
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo