- 主题:请教大侠,网页描红定位
公司的项目,布置的任务就剩这个没有任何思路,PHP开发的网站,打开一个外部网页链接后,要求网页能够直接通过滚动到数据库中对应的“关键字”位置,并描红显示。
举个例子,比如今天新浪首页有条新闻“ABC123”,需要右边滚动条下拉第二页。这个标题已经预先存储到自己的数据库了。然后在我们自己网站的页面点击“ABC123”后,直接新窗口弹出新浪的首页,要求直接滚动到“ABC123”的位置,并描红显示。
多谢各位大侠了!
--
FROM 123.120.32.*
直接新窗口打开肯定是不行的吧?
开发客户端或是打开自己的新页面,frame新浪首页
然后在自己的页面上通过js控制似乎可以实现?
【 在 just4life () 的大作中提到: 】
: 公司的项目,布置的任务就剩这个没有任何思路,PHP开发的网站,打开一个外部网页链接后,要求网页能够直接通过滚动到数据库中对应的“关键字”位置,并描红显示。
: 举个例子,比如今天新浪首页有条新闻“ABC123”,需要右边滚动条下拉第二页。这个标题已经预先存储到自己的数据库了。然后在我们自己网站的页面点击“ABC123”后,直接新窗口弹出新浪的首页,要求直接滚动到“ABC123”的位置,并描红显示。
: 多谢各位大侠了!
: ...................
--
FROM 211.99.222.55
感觉类似搜索引擎的关键字高亮?那得被嵌入的网页愿意被frame套在里面
有些网页会自动的从frame里跳出来的
【 在 just4life () 的大作中提到: 】
: 公司的项目,布置的任务就剩这个没有任何思路,PHP开发的网站,打开一个外部网页链接后,要求网页能够直接通过滚动到数据库中对应的“关键字”位置,并描红显示。
: 举个例子,比如今天新浪首页有条新闻“ABC123”,需要右边滚动条下拉第二页。这个标题已经预先存储到自己的数据库了。然后在我们自己网站的页面点击“ABC123”后,直接新窗口弹出新浪的首页,要求直接滚动到“ABC123”的位置,并描红显示。
: 多谢各位大侠了!
: ...................
--
FROM 159.226.43.*
那也不行,跨域操作不了
除非自己服务端读取远端结果,处理完输出或者显示完在自己的域里处理
【 在 NIGHTFIRE (昵称不告诉你们) 的大作中提到: 】
: 感觉类似搜索引擎的关键字高亮?那得被嵌入的网页愿意被frame套在里面
: 有些网页会自动的从frame里跳出来的
--
FROM 123.116.103.*
恩,刚才可能没描述清楚。首先不是类似于机器的自动爬行,目标网页需要高亮显示的关键词已经事先通过人工记录了,需要的就是用户打开链接弹出这个网页的时候,网页自动定位到关键词的地方,并描红显示。
另外,如果自己做处理显示的话,总不能把新浪的页面都自己画一遍吧。唉,领导拍脑袋想出来的,累死人啊。
【 在 Eliot (好警察) 的大作中提到: 】
: 那也不行,跨域操作不了
: 除非自己服务端读取远端结果,处理完输出或者显示完在自己的域里处理
--
FROM 123.120.32.*
这是不可能做到的!你怎么可能去操作第三方网站的页面呢?
你必须把别人网站的东西读取到服务器上来进行操作。
【 在 just4life () 的大作中提到: 】
: 公司的项目,布置的任务就剩这个没有任何思路,PHP开发的网站,打开一个外部网页链接后,要求网页能够直接通过滚动到数据库中对应的“关键字”位置,并描红显示。
: 举个例子,比如今天新浪首页有条新闻“ABC123”,需要右边滚动条下拉第二页。这个标题已经预先存储到自己的数据库了。然后在我们自己网站的页面点击“ABC123”后,直接新窗口弹出新浪的首页,要求直接滚动到“ABC123”的位置,并描红显示。
: 多谢各位大侠了!
--
FROM 117.79.83.*
是啊,我也是这么跟组长说的,但是刚才PHP版的一个哥们给个建议,如下,
“
1.用自己的页面frame外链页面
2.用js获取外联页面的dom,查找关键字“ABC123”
3.获取该关键字所在元素在frame页面内的X,Y坐标及元素自身的高度和宽度
4.js控制frame滚动条滚动到相应高度
5.js在相应位置添加一个浮动层,红色半透明,高度宽度与关键字所在元素一致
”
看上去,似乎也是满靠谱的啊。
但现在的问题就是,JS不能跨域操作,怎么获取外连页面的DOM呢。
【 在 sagu (九州) 的大作中提到: 】
: 这是不可能做到的!你怎么可能去操作第三方网站的页面呢?
: 你必须把别人网站的东西读取到服务器上来进行操作。
--
FROM 123.120.32.*
2、3都非常不靠谱。
别浪费时间了。
【 在 just4life () 的大作中提到: 】
: 是啊,我也是这么跟组长说的,但是刚才PHP版的一个哥们给个建议,如下,
: “
: 1.用自己的页面frame外链页面
: ...................
--
FROM 117.79.83.*
既然知道js不能跨域,就说明不靠谱了啊,为啥还说满靠谱的……
【 在 just4life () 的大作中提到: 】
是啊,我也是这么跟组长说的,但是刚才PHP版的一个哥们给个建议,如下,
“
1.用自己的页面frame外链页面
2.用js获取外联页面的dom,查找关键字“ABC123”
3.获取该关键字所在元素在frame页面内的X,Y坐标及元素自身的高度和宽度
4.js控制frame滚动条滚动到相应高度
5.js在相应位置添加一个浮动层,红色半透明,高度宽度与关键字所在元素一致
”
看上去,似乎也是满靠谱的啊。
但现在的问题就是,JS不能跨域操作,怎么获取外连页面的DOM呢。
【 在 sagu (九州) 的大作中提到: 】
: 这是不可能做到的!你怎么可能去操作第三方网站的页面呢?
: 你必须把别人网站的东西读取到服务器上来进行操作。
--
FROM 61.135.255.86
这个前提是外链页面已经被抓到本地作为文本或者静态html保存
如果是在外站服务器上是没戏的
之前给你的回文中没完全搞明白
如果,让你产生困扰,请谅解
【 在 just4life () 的大作中提到: 】
: 是啊,我也是这么跟组长说的,但是刚才PHP版的一个哥们给个建议,如下,
: “
: 1.用自己的页面frame外链页面
: ...................
--
FROM 117.79.0.155