小编Rya*_*yan的帖子

将history.js与动态(ajax)模式框一起使用

我有一个模式框(Twitter Bootstrap),我试图在各种动作中控制:

  1. 用户单击链接>显示模式框,更改(pushstate)URL.
  2. 用户隐藏模式框>将URL更改为上一页.
  3. 用户单击后退按钮>隐藏模式框,URL更改为上一页.
  4. 用户单击前进按钮>显示模式框,更改(pushstate)URL.

我的主要问题是项目#3和#4.使用后退/前进浏览器按钮时,模式需要切换(URL更改)

这是我当前的代码,仅适用于操作#1和#2:

$(function(){
$(".thumbnail a").live("click", function(){
    msgurl = $(this).attr("href");
    msgid = $(this).attr("data-id");
    history.pushState(null, null, msgurl);

    $.ajax({
        ....
    });
    $("#newmodal").modal({ dynamic: true });
     return false;
});
$('#newmodal').bind('hidden', function () {
    history.back();
})
});
Run Code Online (Sandbox Code Playgroud)

有没有办法使用历史库来实现后退/前进按钮控制,例如history.js?我如何将其实现到我的代码中?

jquery history.js pushstate twitter-bootstrap

3
推荐指数
1
解决办法
2679
查看次数

使用Python解析包含子部件的多部分电子邮件

我正在使用此功能来解析电子邮件.我能够解析"简单"的多部分电子邮件,但是当电子邮件定义多个边界(子部分)时,它会产生错误(UnboundLocalError:赋值前引用的局部变量'html').我想脚本分开文本和html部分,只返回html部分(除非没有html部分,返回文本).

def get_text(msg):
text = ""
if msg.is_multipart():
    for part in msg.get_payload():
        if part.get_content_charset() is None:
            charset = chardet.detect(str(part))['encoding']
        else:
            charset = part.get_content_charset()
        if part.get_content_type() == 'text/plain':
            text = unicode(part.get_payload(decode=True),str(charset),"ignore").encode('utf8','replace')
        if part.get_content_type() == 'text/html':
            html = unicode(part.get_payload(decode=True),str(charset),"ignore").encode('utf8','replace')
    if html is None:
        return text.strip()
    else:
        return html.strip()
else:
    text = unicode(msg.get_payload(decode=True),msg.get_content_charset(),'ignore').encode('utf8','replace')
    return text.strip()
Run Code Online (Sandbox Code Playgroud)

python

2
推荐指数
1
解决办法
5497
查看次数

删除字符串中除第一次出现之外的所有出现

在 Python 中,我希望<html>从字符串中删除所有“ ”(第一次出现除外)。

另外,我希望</html>从字符串中删除所有“ ”(最后一次出现除外)。

<html> 可以是大写,所以我需要它不区分大小写。

我最好的方法是什么?

python regex string

2
推荐指数
1
解决办法
3451
查看次数