Merge pull request #430 from prehisle/fix/publish-tag-popup-stuck
fix: avoid tag popup blocking after content input
This commit is contained in:
@@ -295,6 +295,9 @@ func submitPublish(page *rod.Page, title, content string, tags []string, schedul
|
|||||||
if err := contentElem.Input(content); err != nil {
|
if err := contentElem.Input(content); err != nil {
|
||||||
return errors.Wrap(err, "输入正文失败")
|
return errors.Wrap(err, "输入正文失败")
|
||||||
}
|
}
|
||||||
|
if err := waitAndClickTitleInput(titleElem); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if err := inputTags(contentElem, tags); err != nil {
|
if err := inputTags(contentElem, tags); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -341,6 +344,17 @@ func submitPublish(page *rod.Page, title, content string, tags []string, schedul
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// waitAndClickTitleInput 在填写正文后等待 1 秒并回点标题输入框,增强后续交互稳定性
|
||||||
|
func waitAndClickTitleInput(titleElem *rod.Element) error {
|
||||||
|
slog.Info("正文填写完成,准备等待后回点标题输入框")
|
||||||
|
time.Sleep(1 * time.Second)
|
||||||
|
if err := titleElem.Click(proto.InputMouseButtonLeft, 1); err != nil {
|
||||||
|
return errors.Wrap(err, "回点标题输入框失败")
|
||||||
|
}
|
||||||
|
slog.Info("已回点标题输入框,继续后续发布流程")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// 检查标题是否超过最大长度
|
// 检查标题是否超过最大长度
|
||||||
func checkTitleMaxLength(page *rod.Page) error {
|
func checkTitleMaxLength(page *rod.Page) error {
|
||||||
has, elem, err := page.Has(`div.title-container div.max_suffix`)
|
has, elem, err := page.Has(`div.title-container div.max_suffix`)
|
||||||
|
|||||||
@@ -150,6 +150,9 @@ func submitPublishVideo(page *rod.Page, title, content string, tags []string, sc
|
|||||||
if err := contentElem.Input(content); err != nil {
|
if err := contentElem.Input(content); err != nil {
|
||||||
return errors.Wrap(err, "输入正文失败")
|
return errors.Wrap(err, "输入正文失败")
|
||||||
}
|
}
|
||||||
|
if err := waitAndClickTitleInput(titleElem); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if err := inputTags(contentElem, tags); err != nil {
|
if err := inputTags(contentElem, tags); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user