簡體   English   中英

簡單的JavaScript onclick不觸發功能-通過jsfiddle和Firebug檢查語法

[英]Simple javascript onclick not firing function - syntax checked via jsfiddle and firebug

我正在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調用它是行不通的。 我已經將其通過jsfiddle和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>

我知道這可能是一件非常簡單的事情,因此,如果它低於常見問題的水平,我深表歉意,但是我很困惑,無法理解為什么這不起作用。 目的是為了a)清理HTML鏈接,以及b)讓我為不同類型的鏈接調用不同的Highslide配置,因此進行跟蹤非常重要。

在此先感謝您的幫助!

現在,返回值是在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>

嘗試這個

<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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM