javascript动态改变img的src属性图片不显示的解决方法

首先讲下这个bug的出现的情况,页面中有


代码如下:

<a href="javascript:void(0)" onclick="document.getElementById('current').src='images/001.jpg';">

这么一个a标签,onclick中的JS代码就是改变id为current的img标签的src属性,以达到动态切换图片的效果。可是不幸的是:IE是动态改变的图片的路径,但是图片却不显示出来,得右键“显示图片”才能看到改变后的图片,不知是什么原因,但据说是<a href="javascript:void(0)">或者<a href="#">这样使用a标签的话并不能阻止a标签最后触发一个什么行为,导致ie6会错误的认为页面刷新或者重定向了,并且中断了当前所有连接,这样新图片的加载就被aborted了(不知真假),不管原因是真是假,下面就先说下解决方案吧

简单的解决方法: 


代码如下:

<a href="javascript:void(0)" onclick="document.getElementById('current').src='images/001.jpg'; return false;">;

就是在代码后面加上return false;即可

时间: 2010-10-17

jQuery在vs2008及js文件中的无智能提示的解决方法

jQuery在vs2008中的智能提示 1  安装VS2008SP1补丁 要确保您的vs2008已经打了sp1补丁,在vs2008的帮助里的关于,要是安装了sp1,会出现"版本 3.5 sp1",没安装当然就只有"版本 3.5". 如果没有安装可以在这下载sp1. 2  安装VS 2008 Patch KB958502以支持"-vsdoc.js"Intellisense文件.该补丁会导致Visual Studio在一个JavaScript库被引用

javascript alert乱码的解决方法

javascript alert()函数就是一个用于输入提示的功能,但今天在使用alert()提示时中文乱码,拼音什么的都没有问题呀,下面我在论坛找到一解决办法,下面与大家分享.解决办法一: 复制代码 代码如下: echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';echo '<script type="text/javascript&q

Jquery修改页面标题title其它JS失效的解决方法

Jquery代码 复制代码 代码如下: $("title").html("hello"); 后来只好用下面这段js代码来实现 Js代码 复制代码 代码如下: document.title="hello";

node.js使用npm 安装插件时提示install Error: ENOENT报错的解决方法

在使用npm install安装扩展插件时,系统提示"npm install Error: ENOENT, stat 'C:Users<用户名>AppDataRoamingnpm'". 以前都是很顺利的安装过程,没出现这种情况.我这里的解决办法是直接创建上面提示的目录就好了,应该是node.js权限不够,在此备注. 有时候就是这样,很可能一个很久都无法解决的问题,实际解决方法很简单,就是这么任性!!

js 未结束的字符串常量错误解决方法

1.JAVASCRIPT引用时,使用的字符语言不一致. 比如:<script type="text/javascript" src="xxx.js" charset="UTF-8″>.xxx.js文件内部使用的是GB2312的格式,外面调用使用的是UTF-8,所以文件内部部分特殊字符因为格式不一致,出现乱码,造成此原因. 2.JAVASCRIPT输出HTML字符时,前后标记不匹配. 这种比较常见,往往在输出字符串时,出现单引号(')或双引号(&

js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法

本文实例讲述了js插件设置innerHTML时在IE8下提示"未知运行时错误"解决方法.分享给大家供大家参考.具体分析如下: 问题描述: 网站中使用了一个js插件,设置innerHTML时,在IE8下报错"未知运行时错误": <div id="divContainer"> <a name="link"> -->报错处 第三方插件内容- </a> </div> 原因: 所设置

在js文件中写el表达式取不到值的原因及解决方法

今天在js文件中,写el表达式取不到值(代码如下),百度一翻,现总结如下: 1.javascript是客户端执行,EL是在服务端执行,而服务端比客户端先执行,所以取不到值 2.要想获取"${isLogin}"的值,可以在jsp中,用一个全局变量接收,然后再js中使用 3.注意:在使用时,注意要添加双引号,如var isLogin="${isLogin}"; 复制代码 代码如下: $(function(){ var isLogin="${isLogin}&q

JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法

本文实例讲述了JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法.分享给大家供大家参考,具体如下: Uncaught SyntaxError: Unexpected token ) 以下代码引发了此异常: <div class="Hd_live_Sharediv left"> <a href="javascript:void()" onclick="loadLivePlayer('ud

nodejs 提示‘xxx’ 不是内部或外部命令解决方法

一般出现这样的问题原因是npm安装出现了问题,全局模块目录没有被添加到系统环境变量. Windows用户检查下npm的目录是否加入了系统变量PATH中,如果不存在需要手动添加,添加之后需要重新启动CMD控制台. nodejs模块全局目录环境变量 npm目录可以使用npm命令去查找:npm config get prefix 好了,问题解决了吧,是不是超级简单实用呢,希望本文能对大家有所帮助.

访问JSP文件或者Servlet文件时提示下载的解决方法

如下图所示:同样的程序有的浏览器出错,有的浏览器不出错.错误的原因是设置MIME类型的代码有误. 如果是JSP文件,查看文件头: 复制代码 代码如下: <%@ page contentType="text/html;charset=gb2312"%> 如果是Servlet文件,查看: 复制代码 代码如下: response.setContentType("text/html;charset=gb2312");

让ie运行js时提示允许阻止内容运行的解决方法

让ie运行js不再提示允许阻止内容 打开IE-工具-Internet选项-安全-自定义级别-脚本-活动脚本启用 打开IE-工具-Internet选项-高级-安全-允许活动内容在我的机器上运行

ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法

本文实例讲述了ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法.分享给大家供大家参考.具体如下: 一.问题描述: ThinkPHP做文字水印 ,今天做一个电子请帖,就把祝福语贴到图片上面,发现一直报错是取不到图片类型,比如gif,jpg等,并提示call an undefined function exif_imagetype(). 二.解决方法: 出现这个错误就是php.in 配置问题,打开即可:打开扩展 exten

PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法

网站搬家的时候碰到的这个问题,因为数据一直是使用PhpMyAdmin工具来进行备份和恢复的,但是随着网站的数据越来越多,所以数据库也是越来越大,压缩后都还有4M的数据,而在PhpMyAdmin里将数据导入时就出错误提示了. 上图为PhpMyAdmin里的提示"没有接收到要导入的数据.可能是文件名没有提交,也可能是文件大小超出 PHP 限制.参见 FAQ 1.16.". 经过网络搜索一番找到了解决方法,原因是PHP默认限制上传文件为2M,而我们只需修改这个默认的限制即可. 操作方法:打开

Visual Studio Code运行程序时输出中文成乱码问题及解决方法

今天写代码,需要输出一些中文,于是就顺势发现了这个问题:VS Code输出中文成乱码.上网查询了一番后,我找到了解决方法,我决定将我看到的方法整理出来,帮助更多朋友.(windows10系统下) 1. 打开控制面板 可以点击电脑桌面上的相应图标打开 也可以点击桌面左下角开始按钮,找到W开头文件列表下的windows系统文件夹中的控制面板 2.选择时钟和区域下的更改日期.时间或数字格式 3.点击管理,然后点选择更改系统区域设置 4. 勾选Beta版:使用Unicode UTF-8提供全球语言支持,

64位系统中IIS7运行ASP时出现ADODB.Connection 800a0e7a错误的解决方法

今天将一个ASP网站拷贝到64位的Windows7中运行,IIS7安装都没有问题,可就是死活运行不了,总是出现ADODB.Connection错误"800a0e7a",真是奇怪,之前在XP中运行一点问题都没有的.起初以为是代码上的原因,于是写一段最简单的连接数据库的代码,还是出错,研究半天终于找到了解决方法,拿来分享. 原因是因为在64位Windows7操作系统中,IIS7应用程序池默认没有启用32位应用程序,而我们连接ACCESS数据库的驱动程序Microsoft.Jet.OLEDB

mysql5.7.18安装时提示无法找到入口问题的解决方法

安装mysql5.7.18出现如下问题,无法定位程序输入点fesetround与动态链接库MSVCR120.dll上,网友给出了解决办法 问题截图如下: 解决方法1: 你可以使用mysql的绿色免解压安装版. 也可以使用wnmp或者xampp,这种集成包. 推荐使用mariadb,而不是mysql(逃) 验证过的解决方法: 下载msvcr120.dll;并复制到系统C:WindowsSystem32下完美解决 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

Linux程序运行时加载动态库失败的解决方法

Linux下不能加载动态库问题 当出现下边异常情况 ./test: error while loading shared libraries: libmfs_open.so: cannot open shared object file: No such file or directory 若动态库的路径在(/usr/cluster/.share/lib) 解决办法: 方法一.在/etc/ld.so.conf文件中添加路径,vi /etc/ld.so.conf 添加下边内容 include ld

Python解析json时提示“string indices must be integers”问题解决方法

本文实例讲述了Python解析json时提示"string indices must be integers"问题解决方法.分享给大家供大家参考,具体如下: import json,但是出现了一个奇怪的问题: string indices must be integers 这个错误告诉我,[ ]里面应该是数字而不是字符串,但是dict使用key访问也可以,这种错误感觉解析出来的结果像是一个list. 所以考虑是字符串解析的问题.打印解析的结果,是一长串的字符串,一堆的key挤在一起,v

win2003安装sqlserver 2000提示无法验证产品密钥的解决方法

症状 在 Service Pack 4 (SP 4) 运行 Microsoft Windows Server 2003. Microsoft Windows Storage Server 2003 或 Microsoft Windows 2000 在服务器上, 您尝试安装 Microsoft SQL Server 2000 通过卷许可协议 (VLA) 媒体. 执行此操作时,会出现以下错误信息 SQL Server 安装向导的 CD KEY 页上: 无法验证产品密钥 解决方案 警告 如果您修改注册

js input输入百分号保存数据库失败的解决方法

解决办法如下: 1.用ASCII码替换百分号和与符号 var remark = $("#remark").val(); remark.replaceAll("ASCII69","%").replaceAll("ASCII70","&"); //展示时需要对原先替换的进行还原展示 remark.replaceAll("%","ASCII69").replaceA