我有一个StreamingHttpResponse函数,该函数正在iframe子代内部运行,iframe的代码如下。 iframe和函数正常工作,但是该函数有时返回非常长的输出,您要么需要按住“ page down”,要么不断使用鼠标滚轮查看最新和最大的输出。我希望它在浏览器中接收到html / text时自动滚动。
我相信我可能会受到HTML或CSS解决方案的限制?我不确定在StreamingHttpResponse中是否可以正确处理jQuery或Javascript,这就是为什么我将Django作为相关框架。我尝试了div样式溢出自动滚动解决方案,但没有成功。
这是iframe代码:
<iframe src="{% url 'landingpage' %}" frameBorder="0"
name="botframe3" scrolling="yes" style="position: absolute; height: 70%; width: 100%;"></iframe>
这是StreamingHttpResponse调用:
@condition(etag_func=None)
def stageDevice(request, cmd, pk):
pullID = Pull.objects.filter(pk=pk)[0]
pullIDq = Pull.objects.filter(pk=pk)
emailListqc = EmailList.objects.filter(ccqc='yes')
emailListstg = EmailList.objects.filter(ccstg='yes')
reqUser = User.objects.get(username=request.user.username)
return StreamingHttpResponse(runSetup(pullID, pullIDq, reqUser), content_type='text/html')
这是runSetup函数:
def runSetup(pullID, pullIDq, reqUser):
yield "<html><head><title>Setup Phase</title>\n"
yield "<link rel='stylesheet' href='/static/css/base.css'>\n"
yield "<link rel='stylesheet' href='/static/css/style.css'>\n"
yield "<link rel='stylesheet' href='https://bootswatch.com/4/cyborg/bootstrap.css'></head>\n"
yield "<div>Attempting to setup for pull ID {0} - Store# {1}.</div>\n".format(pullID.pullid, pullID.store.storenumber)
yield "<hr>"
yield '<div style="overflow: auto;">'
# Rest of the code goes here
yield "</div></body></html>\n"
我希望流html / text输出在呈现时自动滚动,然后在脚本结束时停止并允许用户根据需要向上滚动。