简单javascript onclick not firing函数-通过JSFIDLE和firebug检查语法

简单javascript onclick not firing函数-通过JSFIDLE和firebug检查语法,javascript,function,onclick,Javascript,Function,Onclick,我在javascript函数中调用一个名为Highslide的实用程序。在链接中嵌入整个内容,如下所示效果良好: <a href="http://localhost/theopscompany-local/test-page-1/" onclick = "return hs.htmlExpand(this, { objectType: 'ajax', width: 400, headingEval: 'this.a.title', wra

我在javascript函数中调用一个名为Highslide的实用程序。在链接中嵌入整个内容,如下所示效果良好:

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "return hs.htmlExpand(this, { 
            objectType: 'ajax', width: 400, 
            headingEval: 'this.a.title', wrapperClassName: 'titlebar' }     )">highslide test link1</a>

然而,将上述代码放在函数中并通过下面的onclick调用它是行不通的。我已经通过JSFIDLE和Firebug了解了它的语法,所有这些看起来都很好,但出于某种原因,它没有触发Highslide代码。链接页面将正常加载

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "highslideview2();">highslide test link2</a>
<script type="text/javascript">
function highslideview2() {
    return hs.htmlExpand(this, { 
        objectType: 'ajax', 
        headingEval: 'this.a.title', wrapperClassName: 'titlebar' });}
</script>

函数highslideview2(){
返回hs.htmlExpand(这个,{
objectType:'ajax',
headingEval:'this.a.title',wrappersclassname:'titlebar'});}
我知道这可能是一件非常简单的事情,所以如果它低于通常问题的水平,我很抱歉,但我被难住了,不明白为什么这不起作用。目的是a)清理HTML链接,b)让我为不同类型的链接调用不同的Highslide配置,因此这非常重要

提前感谢您的帮助

试试这个

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "highslideview2()">highslide test link2</a>
<script type="text/javascript">
function highslideview2() {
    return hs.htmlExpand(this, { 
        objectType: 'ajax', 
        headingEval: 'this.a.title', wrapperClassName: 'titlebar' });}
</script>

函数highslideview2(){
返回hs.htmlExpand(这个,{
objectType:'ajax',
headingEval:'this.a.title',wrappersclassname:'titlebar'});}
试试这个

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "highslideview2()">highslide test link2</a>
<script type="text/javascript">
function highslideview2() {
    return hs.htmlExpand(this, { 
        objectType: 'ajax', 
        headingEval: 'this.a.title', wrapperClassName: 'titlebar' });}
</script>

函数highslideview2(){
返回hs.htmlExpand(这个,{
objectType:'ajax',
headingEval:'this.a.title',wrappersclassname:'titlebar'});}

返回值现在是在highslideview2()中执行的代码的结果,而不是触发onclick处理程序时运行的函数。将返回值添加回内联onclick属性应该可以修复它

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "return highslideview2(this)">highslide test link2</a>
<script type="text/javascript">
function highslideview2(e) {
    return hs.htmlExpand(e, { 
        objectType: 'ajax', 
        headingEval: 'e.a.title', wrapperClassName: 'titlebar' });}
</script>

函数highslideview2(e){
返回hs.htmlExpand(e,{
objectType:'ajax',
headingEval:'e.a.title',wrappersclassname:'titlebar'});}

返回值现在是在highslideview2()中执行的代码的结果,而不是触发onclick处理程序时运行的函数。将返回值添加回内联onclick属性应该可以修复它

<a href="http://localhost/theopscompany-local/test-page-1/" onclick = "return highslideview2(this)">highslide test link2</a>
<script type="text/javascript">
function highslideview2(e) {
    return hs.htmlExpand(e, { 
        objectType: 'ajax', 
        headingEval: 'e.a.title', wrapperClassName: 'titlebar' });}
</script>

函数highslideview2(e){
返回hs.htmlExpand(e,{
objectType:'ajax',
headingEval:'e.a.title',wrappersclassname:'titlebar'});}

No joy Emissary:(我想知道函数在脚本中是否仍应引用“this”,或者我是否需要传递指向它的链接以使其正常工作?@Dains-你说得对,很抱歉我匆忙错过了这一点(显然我无法测试代码)-你可以给你的新函数一个参数,然后把它传递给它。我已经更新了上面的代码。我还编辑了headingEval-我不确定这段代码到底发生了什么,是否需要更改。Woohoo工作得非常好,Emissary!谢谢你的帮助。作为实用工具,你可以在highslide上找到它,它是一个多功能JS windowizer除了我不知道如何正确激活它之外,它还为我需要的UI功能节省了大量自定义JS编程。没有欢乐使者:(我想知道函数是否仍然应该引用“this”在脚本中时,还是我需要传递指向它的链接才能使其工作?@Dains-你是对的,很抱歉我在匆忙中错过了这一点(显然我无法测试代码)-你可以给你的新函数一个参数,然后把它传递给它。我已经更新了上面的代码。我还编辑了headingEval-我不确定这段代码到底发生了什么,是否需要更改。Woohoo工作得非常好,Emissary!谢谢你的帮助。作为实用工具,你可以在highslide上找到它,它是一个多功能JS windowizer除了我不知道如何正确激活它之外,它还为我需要的UI功能节省了大量自定义JS编程。