0

ペイパルボタン付きのスパンがあります。ユーザーがTOSを確認した後にのみ、このペイパルボタンを押すことができるようにする必要があります。このために、私はペイパルボタンでスパンを覆い、チェックボックス、不透明度、z-indexがチェックされていない別のdivを置くと思います。ユーザーがチェックボックスをオンにすると、レイオーバーされたdivがそのようなz-indexを取得するため、ペイパルボタンのあるスパンがその上にあり、押すことができます。

私はのようなものが必要です

HTML

<div class="with_zindex">
    <input type="checkbox​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​">
<span class="here_is_paypal_button"></span>
</div>

CSS

.with_zindex{
background-color:#fafafa;
    opacity: .5;
    filter: alpha(opacity=50);
    -moz-opacity: .5;
z-index:1000;
}
.with_zindex + input[type=checkbox]:checked {
z-index:-1000;
}

しかし、これは私には機能しません(最初のフォーマットのみが表示され、チェックボックスをオン/オフしても変更されません)。

4

2 に答える 2

0

提案

代わりに、最初にPayPalボタンを無効にして、ユーザーがチェックボックスをクリックすると有効にすることができます。

HTML(jQueryバージョン)

<input type="checkbox" name="terms" 
       onclick="$('#paypal').removeAttr('disabled');" />
<input type="image" name="paypal" id="paypal" disabled="disabled" />

HTML(JavaScriptバージョン)

<input type="checkbox" name="terms" 
       onclick="document.getElementById('paypal').removeAttribute('disabled');" />
<input type="image" name="paypal" id="paypal" disabled="disabled" />

そうでなければ、あなたが主張するならz-index

position: relative;あなたは働くために与える必要がありますz-index。そして、ネガティブはありませんz-index

.with_zindex {
    background-color:#fafafa;
    opacity: .5;
    filter: alpha(opacity=50);
    -moz-opacity: .5;
    position: relative;
    z-index:1000;
}
.with_zindex + input[type=checkbox]:checked {
    position: relative;
    z-index: 0;
}

あなたの必要な答え

HTML

<div class="with_zindex">
    <input type="Checkbox" name="TOS" value="read">
    <span class="catItemExtraFieldsValue">
        <img src="http://gutgeordnet.de/reise/images/epaypal_de.gif">
    </span>
</div>

CSS

.with_zindex {position: relative;}

.with_zindex input[type=checkbox] {
    background-color:#fafafa;
    filter: alpha(opacity=50);
    position: absolute;
    z-index: 50;
    top: 10px;
    left: -35px;
    width: 135px;
    text-align: right;
    vertical-align: top;
    cursor: pointer;
}

.with_zindex input[type=checkbox] + .catItemExtraFieldsValue {
    position: relative;
    opacity: .5;
    -moz-opacity: .5;
    z-index: 45;
}

.with_zindex input[type=checkbox]:after {
    content: 'I accept';
    font-size: 14px;
    vertical-align: top;
    line-height: 1em;
    font-weight: bold;
    font-family: tahoma;
}

.with_zindex input[type=checkbox]:checked {position: static; display: none;}

.with_zindex input[type=checkbox]:checked + .catItemExtraFieldsValue {
    position: static;
    background-color: transparent;
    opacity: 1;
    -moz-opacity: 1;
}

フィドル: http: //jsfiddle.net/praveenscience/35cQz/

于 2013-01-19T02:15:43.213 に答える
0

私はこの方法でそれを手に入れました:

HTML:

<input class="Checkbox1" name="TOS" id="TOS" value="read" type="checkbox";"/>

JS

var $K2 = jQuery.noConflict();

 $K2(document).ready(function(){

//$K2('#TOS').attr('checked', false);
//$K2('input[type=image]').attr("class", "agbunchecked");
//$K2('input[type=image]').bind("click", giveAllert);

if(!$K2('#TOS').attr('checked')) //Existenzcheck
{
    $K2('input[type=image]').attr("class", "agbunchecked");
    $K2('input[type=image]').bind("click", giveAllert);
}

function giveAllert()
{
    alert("\Pleas check the checkbox!");
    return false;
}

$K2('#TOS').change(function(event){
    if(this.checked) 
    {
        $K2('input[type=image]').attr("class", "agbchecked");
        $K2('input[type=image]').unbind("click");
    }
    else
    {
        $K2('input[type=image]').attr("class", "agbunchecked");
        $K2('input[type=image]').bind("click", giveAllert)
    }
});

  });

CSS

.agbunchecked{
background-color:#fafafa;
opacity: .5;
filter: alpha(opacity=50);
-moz-opacity: .5;
}
于 2013-02-09T13:42:15.770 に答える