0

こんにちは、Javascriptを使用して、クリックしたときにdivの背景画像を切り替えようとしています。

これは私がこれを達成するためにしたことです:

私のコードは次のとおりです

HTML:

<div id="AccordionContainer" class="AccordionContainer">
    <div onclick="runAccordion(1);">
        <div class="AccordionTitle" id="Accordion1Title" onselectstart="return false;" onclick="changeArrow(1);" >
            Instructions
        </div>
    </div>

    <div id="Accordion1Content" class="AccordionContent">  
        <p>Enter in your search parameters by clicking on the title of... </p>
    </div>

    <div onclick="runAccordion(2);">
        <div class="AccordionTitle" id="Accordion2Title" onselectstart="return false;" onclick="changeArrow(2);" >
            Colour
        </div>
    </div>

    <div id="Accordion2Content" class="AccordionContent">  
        [wpv-control field="cultivar-category" type="checkboxes" values="Dark Red" url_param="cultivar-category"]
    </div>

    </div>
</div>

Javascript:

function changeArrow(index)
{
    var arrowID = "Accordian" + index + "Title";    
    document.getElementById(arrowID).style.background="url(./img/accordian-title-up.png) no-repeat scroll 0 0 transparent"; 
}

ただし、onclick = "runAccordion(index);"を含むdivをクリックしても何も起こりません。

ここで何が欠けていますか?

4

1 に答える 1

0

runAccordionchangeArrowHTML の構造に応じて、オーバーライドまたはブロックしている可能性があります。それらを同じ onclick リスナー ( runAccordion(1);changeArrow(1);) で組み合わせてみて、そこで何が起こるかを確認してください。

また、これを修正した場合は、イメージ パスを確認してください。

編集

タイプミスがあります:

var arrowID = "Accordian" + index + "Title";

次のようにする必要があります。

var arrowID = "Accordion" + index + "Title";

于 2013-02-19T08:52:19.157 に答える