Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
Click editable cell and then click whatever else.
  
<table>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td class='editable'><span>I am editable</span><input type="text" value="I am editable"/></td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
</table>
</body>
</html>
 
table {
  font-size: 14px;
  font-family: verdana;
  border: 1px dotted gray;
  /* border-collapse: collapse; */
  border-spacing: 0;
  td {
    padding: 10px;
    margin:0;
    width: 120px;
    background: rgba(255,0,0,0.1);
    &.editable{
      cursor: pointer;
    }
  }
}
table input{
  display: none;
  font-size: 14px;
  font-family: verdana;
  padding: 8px 10px;
  width: 120px;
  border:0;
}
table tr.edit-mode{
  span{
    display:none;
  }
  input{
    z-index:999;
    position:relative;
    display: block;
  }
  td.editable{
    padding: 0;
  }
  td:first-child::before{
    content: '';
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    /*Uncomment next line to see overlay*/
    /* background: rgba(0,200,0,0.3); */
    z-index: 100;
  }
}
 
$ ->
  $("table tr td.editable").click (e) ->
    $row = $(this).parent()
    return if e.target.tagName.toLowerCase() is 'input'
    $row.toggleClass 'edit-mode'
    $(this).find("input").focus()
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
anonymouspro
0viewers