【发布时间】:2012-12-09 19:51:01
【问题描述】:
好的,所以我一直在构建这个网站。其中一页是新闻源 www.wenotelling.x10.mx/news/ 新闻页面中嵌入了新闻源页面,这是实际更新发生的地方。一切都很好,而且该网页似乎可以正常工作。我有两个问题。
- 新闻源似乎在页面加载时没有更新,但在页面刷新时加载。
- 我想添加笑脸。
所以我写了一些 JScript 来一次性解决这两个问题。由于新闻源是通过 HTML 页面更新的,而且我不想每次都去寻找笑脸的 URL,所以我想出了以下代码: http://www.wenotelling.x10.mx/news/smilescript.js
$(document).ready(function()
{
alert("Called");
document.getElementByClass('happy').innerHTML = '<img src="smileys/happy.gif"></img>';
document.getElementByClass('star').innerHTML = '<img src="smileys/star.gif"></img>';
document.getElementByClass('dead').innerHTML = '<img src="smileys/dead.gif"></img>';
document.getElementByClass('yawn').innerHTML = '<img src="smileys/yawn.gif"></img>';
document.getElementByClass('snub').innerHTML = '<img src="smileys/snub.gif"></img>';
document.getElementByClass('relax').innerHTML = '<img src="smileys/relax.gif"></img>';
document.getElementByClass('devil').innerHTML = '<img src="smileys/devil.gif"></img>';
document.getElementByClass('cool').innerHTML = '<img src="smileys/cool.gif"></img>';
document.getElementByClass('wink').innerHTML = '<img src="smileys/wink.gif"></img>';
document.getElementByClass('shock').innerHTML = '<img src="smileys/shock.gif"></img>';
document.getElementByClass('bigsmile').innerHTML = '<img src="smileys/bigsmile.gif"></img>';
document.getElementByClass('confused').innerHTML = '<img src="smileys/confused.gif"></img>';
document.getElementByClass('sad').innerHTML = '<img src="smileys/sad.gif"></img>';
document.getElementByClass('angry').innerHTML = '<img src="smileys/angry.gif"></img>';
document.getElementByClass('clown').innerHTML = '<img src="smileys/clown.gif"></img>';
document.getElementByClass('blush').innerHTML = '<img src="smileys/blush.gif"></img>';
if(location.hash !="#");
{
location = "#";
location.reload(true);
}
alert("A-OK");
});
所以,在编辑时我们可以简单地输入<smiley class="happy"></smiley>。我知道笑脸不是真正的标签,但我不认为它会有所作为,因为我以前见过“假标签”。我尝试将笑脸标签更改为<div class="happy"></div>,但这也不起作用。在脚本的最后,我放了一个刷新函数。
无论如何,脚本无法正常工作。它被调用,但不起作用。所以我通过了 萤火虫。 Firebug 给出了以下消息:
SyntaxError: missing ) after argument list
[Break On This Error]
(22 out of range 21)
然后我查看了脚本,好吧,所有的 ) 似乎都在那里。不仅如此,第 22 行之前的笑脸也不起作用。
无论如何。任何想法为什么: 1) 笑脸没有出现? 2) 脚本没有被完全执行?
【问题讨论】:
-
if(location.hash !="#")不是if(location.hash !="#"); -
你为什么不用css-background图片?
-
另外,
location = "#";是一个有效的分配吗??? -
使用在线语法验证网站,如 jslint 或 jshint...您会比编写问题更快地隔离自己的问题
-
看看当你正确地标记你的代码时,错误会立即显现出来
标签: javascript jquery syntax innerhtml