我正在使用jQuery版本1.8.3
jQuery('#edit_param_apppmStyleImage').attr("href","#");
HTML结果是
<a id="edit_param_apppmStyleImage" href="">Edit</a>
它设置一个空值而不是“#”。并且这100%肯定是由我网站的其他人编写的特殊脚本引起的。
任何专家都可以提供一些关于可能导致这种奇怪行为的建议吗?顺便说一句,它通常设置其他值,如'##'。
答案 0 :(得分:0)
它设置一个空值而不是“#”。而这肯定是100%造成的 通过我网站的其他人编写的特殊脚本。
您未提供有关您网站上运行的特殊脚本的任何详细信息。但是我会在加载所有内容(包括图像)后尝试运行脚本。在这种情况下,这就是我的想法;
当load元素和所有子元素都有时,load事件被发送到元素 已完全装满。
由于它与$(document).ready()
函数略有不同,如果某些其他脚本覆盖了脚本的预期行为,则可能会有所不同。
尝试以下
jQuery(window).bind("load", function() {
jQuery('#edit_param_apppmStyleImage').attr("href","#");
});
我们在这里做的是我们要延迟脚本的执行,直到加载整个窗口。由于$(document).ready()
函数中的任何内容都在$(window).load()
函数中的代码之前执行,因此我们减少了重写脚本的可能性。
不确定是否有效,但请试一试。
答案 1 :(得分:-3)
将attr()
替换为prop()
:
jQuery('#edit_param_apppmStyleImage').prop("href","#");