ssd001001
flypig_1
采纳率14.3%
2016-03-28 11:44 阅读 1.2k

jquery的一个遍历问题

现在在做一个公式编辑器,我对jquery也不熟悉,边查边做,现在遇到一个问题。就是我先通过定义输入框编辑好公式,然后再去掉输入框,这时高度会有变化,原来排版好的公式符号等,就会出现错位。我的解决思路是,完成后遍历一遍,重新获取每一部分的高度,再把符号等重新定位,让其垂直居中。效果图如下,上边的是带输入框的,下边的是去掉输入框的:图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • ssd001001 flypig_1 2016-03-28 11:51

    去掉输入框的HTML的代码如下:

    1
     
              </div></td>
          </tr>
          <tr>
            <td><span onclick="wtrecodes(4,2);" id="nf_4" class="" style="font-size: 90%; min-width: 10.8px; min-height: 18px;" box="1">2</span></td>
          </tr>
        </tbody>
      </table>
      <font style="top:-25px;">x</font>
      <font style="top:-25px;">-</font>
      <font style="top:-25px;">+</font>
      <font style="top:-25px;">×</font>
      <font style="top:-25px;">÷</font>
      <font style="top:-25px;">=</font>
    </span> 
    </div>
    

    我想遍历一遍,重新修改标签里的top值,使其能够垂直居中,

    jquery代码如下,不知道为啥不能重新改值:

    $("#matypalayerhide span").each(function(event) {
            var fatherid = $(this).attr("id");
            var fc = $("#"+fatherid).height();          
            var  averageHeight= parseInt(fc / 2);
            $("#"+fatherid).children("font").css("top","-"+averageHeight+"px");
            //event.stopPropagation();    // 阻止点击事件冒泡到父级元素
    });
    
    点赞 评论 复制链接分享
  • ssd001001 flypig_1 2016-03-28 11:54

    去掉输入框的HTML的代码如下,上边的好像没显示完全?

    1
     
              </div></td>
          </tr>
          <tr>
            <td><span onclick="wtrecodes(4,2);" id="nf_4" class="" style="font-size: 90%; min-width: 10.8px; min-height: 18px;" box="1">2</span></td>
          </tr>
        </tbody>
      </table>
      <font style="top:-25px;">x</font>
      <font style="top:-25px;">-</font>
      <font style="top:-25px;">+</font>
      <font style="top:-25px;">×</font>
      <font style="top:-25px;">÷</font>
      <font style="top:-25px;">=</font>
    </span> 
    
    </div>
    
    点赞 评论 复制链接分享
  • ssd001001 flypig_1 2016-03-28 11:55

    图片说明

    点赞 评论 复制链接分享

相关推荐