0

イメージタグ付きの link_to_function があります。ページの読み込みのために無効にしたい(画像をぼかしてクリックイベントを無効にする)。ただし、「ボタン 1」という名前の別のボタンをクリックすると、それが有効になります。どうすればそれを達成できますか?

リンク付き画像のCSSは

.img  
{
opacity:0.4;
filter:alpha(opacity=40); 
} 

ビューは....

<%i = 1%>
<div id = "file_<%= i %>" class = "file">
<%= link_to_function image_tag("play_images.png",:width => 30, :height => 30,:align => 'left', :title => 'Play', :id => "img_play#{i}"), :id => "play_#{i}"%>
&nbsp;&nbsp;<%= link_to_function image_tag("stop_images.png",:width => 30, :height => 30,:align => 'left', :title => 'Stop', :id => "img_stop#{i}",:class => "img"), :id => "stop_#{i}"%>
<%= link_to_function image_tag("fast_fwd.jpeg",:width => 30, :height => 30, :title => 'Fast farword', :id => "img_ff#{i}", :class => "img"), :disabled => 'true',:id => "ff_#{i}"%>

<%= link_to_function image_tag("images.jpeg",:align => 'right'), :id => "close_#{i}"%>
 <div id = "request_<%= i%>" class = "request">
   </div>
 </div>
 <%i = i + 1%>

さて、ここで私が望むのは、最初にクラス「img」の2つの画像ボタンがぼやけて無効になり、ID「play_#」のボタンをクリックすると、クラス「img」の両方のボタンがクラスを削除し、それらがwll b 有効。では、ロード時に無効にし、再生ボタンがクリックされたときに有効にするにはどうすればよいですか。私のjqueryは...

   function set_file(id,time,user,node,activity)
    {
     var filename = "";
       filename = user+"_"+node+"_"+activity+"_"+time;

        jQuery("#log_"+id).ready(function() {
        jQuery("#file_"+id).dialog({modal: true, resizable: false, draggable: false,
                 title: "File Content", width: 520,

       });
        jQuery("#play_"+id).click(function(){
          jQuery("#img_stop"+id).removeClass();
          jQuery("#img_ff"+id).removeClass();
                    text="content of text here";
                    delay=500;
                    currentChar=1;
                    destination="[not defined]";
       jQuery.get('/requests/download_log/?filename=' + filename, function(data) {
    });

});
jQuery("#stop_"+id).click(function(){
    jQuery("#img_ff"+id).addClass('img');
    jQuery("#img_stop"+id).addClass('img');
   alert("Stop");
  });
   jQuery("#ff_"+id).click(function(){
  alert("Fast Forward");
  });
 }
4

2 に答える 2

0

問題をより正確に説明してください。たとえば、コードを投稿してください。

多分あなたはそのようなことをしようとします:

jQuery(document).ready(function() {
    var $button1 = jQuery('#button1');
    var $button2 = jQuery('#button2').attr('disabled', 'disabled');

    $button1.click(function() {
        if ($button2.is(':disabled')) {
            $button2.removeAttr('disabled');
        } else {
            $button2.attr('disabled', 'disabled');
        }
    });

    $button2.click(function() {
        alert('button2 - click');
    });
});​

ここで試してみてください:http://jsfiddle.net/f9F9z/2/

于 2012-12-13T10:39:36.777 に答える
0

私があなたを正しく理解していれば、ここにはいくつかの可能性があります。最も一般的なのは、css display:none を使用して、最初はボタンを表示しないことです。ドキュメントの準備ができたら、css をブロックまたは削除するようにディスプレイを設定できます。「ボタン 1」をクリックすると、同じ機能を使用できます。

別の方法がある場合は、コードを投稿して、これを行うためのより適切な方法があるかどうかを確認してください。

于 2012-12-13T10:42:26.390 に答える