IP Library Granted Patent US 9,792,385
Granted Patent B2
US 9,792,385 · App. 12/457,758 · Granted Oct 17, 2017

Systems and methods for improved web-based document retrieval and object manipulation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,792,385
App. No.
12/457,758
Granted
Oct 17, 2017
Kind
B2
Abstract

Systems and methods are provided for improving web-based document retrieval and object manipulation. In an implementation, objects within web documents (e.g., a web page) are manipulated when the objects are visible through a viewport of a user's web browser. According to a method, an object selected from a web document is manipulated when that selected object is displayed within the viewport of the user's browser. The manipulation may include downloading content associated with the stored object and additionally, or alternatively, executing a script associated with the stored object. Additionally, or independently, methods may be provided for blocking the download of an object in a retrieved web document until that object is displayed or visible in the user's browser viewport.

Claims (97)

1. A computer-implemented method for manipulating objects in a web document, the method comprising the following steps, performed by one or more processors:

identifying a portion of a retrieved web document that is visible to a user, the visible portion having a first boundary in a first scrolling direction and a second boundary in a second scrolling direction;

identifying at least one object within the retrieved web document, the identified object being associated with object metadata and a corresponding manipulation;

expanding at least one of the first boundary in the first scrolling direction or the second boundary in the second scrolling direction to establish an expanded portion of the retrieved web document, the expanded portion comprising the visible portion and a portion of the retrieved web document that is invisible to the user;

identifying whether the object will require a substantial bandwidth to load based on the object metadata;

immediately downloading the object when the object does not require substantial bandwidth to load;

detecting whether a portion of the identified object falls between a first boundary and a second boundary of the expanded portion, when the object requires substantial bandwidth to load;

performing the corresponding manipulation of the identified object when the portion of the identified object falls between the first and second boundaries of the expanded portion, the corresponding manipulation including refreshing previously downloaded electronic content associated with the identified object by requesting and retrieving updated content from a server; and

adding the identified object to a polling queue when no portion of the identified object fails between the first and second boundaries of the expanded portion.

2. The method of claim 1 , wherein the detecting comprises:

detecting whether the identified object fails entirely between the first and second boundaries of the expanded portion.

3. The method of claim 1 , further comprising:

identifying an additional portion of the retrieved web document, the additional portion having a corresponding additional first boundary and a corresponding additional second boundary.

4. The method of claim 3 , further comprising:

storing a source of the identified object as a temporary variable;

replacing the source with a blank placeholder, wherein the blank placeholder blocks a manipulation of the identified object;

detecting whether a portion of the identified object falls between the boundaries of the additional portion of the retrieved web document;

replacing the blank placeholder with the stored source when the portion of the identified object falls between the boundaries of the additional portion of the retrieved web document; and

performing the corresponding manipulation of the identified object based on the stored source.

5. The method of claim 3 , further comprising:

detecting whether a portion of an object in the polling queue falls between the boundaries of the additional portion of the retrieved web document; and

performing a corresponding manipulation of the object in the polling queue when the portion of the object in the polling queue falls between the boundaries of the additional portion of the retrieved web document.

6. The method of claim 3 , further comprising:

detecting whether a portion of an object in the polling queue falls within a threshold distance of at least one of the boundaries of the additional portion of the retrieved web document; and

performing the corresponding manipulation of the object in the polling queue, when the portion of the object in the polling queue falls within the threshold distance of at least one of the boundaries of the additional portion.

7. The method of claim 1 , wherein the detecting comprises:

determining a position of the identified object within the retrieved web document using a stored position of the identified object.

8. The method of claim 1 , wherein the corresponding manipulation executes a script associated with the identified object.

9. The method of claim 1 , further comprising:

replacing the identified object with the refreshed electronic content when a portion of the identified object falls between the first and second boundaries of the expanded portion, and

wherein the expanding includes expanding at least one of the first boundary of the visible portion or the second boundary of the visible portion in accordance with a user defined threshold detection distance.

10. The method of claim 1 , wherein:

the identified portion corresponds to a first scroll position within the retrieved web document; and

the method further comprises:

obtaining information identifying a second scroll position within the retrieved web document; and

identifying an additional portion of the retrieved web document that corresponds to the second scroll position, the additional portion having a corresponding additional first boundary and a corresponding additional second boundary.

11. The method of claim 10 , further comprising:

determining whether a displacement between the first and second scroll positions exceeds a threshold displacement; and

identifying the additional portion of the retrieved web document when the displacement between the first and second scroll positions exceeds the threshold displacement.

12. An apparatus, comprising:

a storage device; and

a processor coupled to the storage device, wherein the storage device stores a program for controlling the processor, and wherein the processor, being operative with the program, is configured to:

identify a portion of a retrieved web document that is visible to a user, the visible portion having a first boundary in a first scrolling direction and a second boundary in a second scrolling direction;

identify at least one object within the retrieved web document, the identified object being associated with object metadata and a corresponding manipulation;

expand at least one of the first boundary in the first scrolling direction or the second boundary in the second scrolling direction to establish an expanded portion of the retrieved web document, the expanded portion comprising the visible portion and a portion of the retrieved web document that is invisible to the user;

identifying whether the object will require a substantial bandwidth to load based on the object metadata;

immediately downloading the object when the object does not require substantial bandwidth to load;

detect whether a portion of the identified object falls between a first boundary and a second boundary of the expanded portion, when the object requires substantial bandwidth to load;

perform the corresponding manipulation of the identified object when the portion of the identified object falls between the first and second boundaries of the expanded portion, the corresponding manipulation including refreshing previously downloaded electronic content associated with the identified object by requesting and retrieving updated content from a server; and

add the identified object to a polling queue when no portion of the identified object falls between the first and second boundaries of the expanded portion.

13. The apparatus of claim 12 , wherein the processor configured to detect is further configured to:

detect whether the identified object falls entirely between the first and second boundaries of the expanded portion.

14. The apparatus of claim 12 , wherein the processor further configured to:

identify an additional portion of the retrieved web document, the additional portion having a corresponding additional first boundary and a corresponding additional second boundary.

15. The apparatus of claim 14 , wherein the processor is further configured to:

store a source of the identified object as a temporary variable;

replace the source with a blank placeholder, wherein the blank placeholder blocks a manipulation of the identified object;

detect whether a portion of the identified object falls between the boundaries of the additional portion of the retrieved web document;

replace the blank placeholder with the stored source when the portion of the identified object falls between the boundaries of the additional portion of the retrieved web document; and

perform the corresponding manipulation of the identified object based on the stored source.

16. The apparatus of claim 14 , wherein the processor is further configured to:

detect whether a portion of an object in the polling queue falls between the boundaries of the additional portion of the retrieved web document; and

perform a corresponding manipulation of the object in the polling queue when the portion of the object in the polling queue falls between the boundaries of the additional portion of the retrieved web document.

17. The apparatus of claim 12 , wherein the detecting includes

determining a position of the identified object within the retrieved web document using a stored position of the identified object.

18. The apparatus of claim 12 , wherein the corresponding manipulation executes a script associated with the identified object.

19. The apparatus of claim 12 , wherein the processor is further configured to:

replace the identified object with the refreshed electronic content when a portion of the identified object falls between the first and second boundaries of the expanded portion, and

wherein the expanding includes expanding at least one of the first boundary or the second boundary in accordance with a user defined threshold detection distance.

20. A tangible, non-transitory computer-readable medium storing instructions that, when executed by at least one processor, perform a method for manipulating objects in a web document, the method comprising:

identifying a portion of a retrieved web document that is visible to a user, the visible portion having a first boundary in a first scrolling direction and a second boundary in a second scrolling direction;

identifying at least one object within the retrieved web document, the identified object being associated with object metadata and a corresponding manipulation;

expanding at least one of the first boundary in the first scrolling direction or the second boundary in the second scrolling direction to establish an expanded portion of the retrieved web document, the expanded portion comprising the visible portion and a portion of the retrieved web document that is invisible to the user;

identifying whether the object will require a substantial bandwidth to load based on the object metadata;

immediately downloading the object when the object does not require substantial bandwidth to load;

detecting whether a portion of the identified object falls between a first boundary and a second boundary of the expanded portion, when the object requires substantial bandwidth to load;

performing the corresponding manipulation of the identified object when the portion of the identified object falls between the first and second boundaries of the expanded portion, the corresponding manipulation including refreshing previously downloaded electronic content associated with the identified object by requesting and retrieving updated content from a server; and

adding the identified object to a polling queue when no portion of the identified object falls between the first and second boundaries of the expanded portion.

21. The computer-readable medium of claim 20 , wherein the detecting comprises:

detecting whether the identified object falls entirely between the first and second boundaries of the expanded portion.

22. The computer readable medium of claim 20 , the method further comprising:

identifying an additional portion of the retrieved web document that is displayed to the user, the additional portion having a corresponding additional first boundary and a corresponding additional second boundary.

23. The computer-readable medium of claim 22 , the method further comprising:

storing a source of the identified object as a temporary variable;

replacing the source with a blank placeholder, wherein the blank placeholder blocks a manipulation of the identified object;

detecting whether a portion of the identified object falls between the boundaries of the additional portion of the retrieved web document;

replacing the blank placeholder with the stored source when the portion of the identified object falls between the boundaries of the additional portion of the retrieved web document; and

performing the corresponding manipulation of the at least one selected identified object based on the stored source.

24. The computer-readable medium of claim 22 , the method further comprising:

detecting whether a portion of an object in the polling queue falls between the boundaries of the additional portion of the retrieved web document; and

performing a manipulation corresponding to the object in the polling queue when the portion of the object in the polling queue falls between the boundaries of the additional portion of the retrieved web document.

25. The computer-readable medium of claim 20 , wherein the detecting comprises:

determining a position of the identified object within the retrieved web document using a stored position of the identified object.

26. The computer-readable medium of claim 20 , wherein the corresponding manipulation executes a script associated with the identified object.

27. The computer readable medium of claim 20 , the method further comprising:

replacing the identified object with the refreshed electronic content when a portion of the identified object falls between the first and second boundaries of the expanded portion, and

wherein the expanding includes expanding at least one of the first boundary or the second boundary in accordance with a user defined threshold detection distance.

Assignments (10)
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Sep 29, 2022
From: YAHOO ASSETS LLC
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 061571/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: YAHOO AD TECH LLC (FORMERLY VERIZON MEDIA INC.)
To: YAHOO ASSETS LLC
Reel/Frame 058982/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
CHANGE OF NAME Recorded Aug 24, 2017
From: AOL INC.
To: OATH INC.
Reel/Frame 043672/0369 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS -RELEASE OF 030936/0011 Recorded Jul 1, 2015
From: JPMORGAN CHASE BANK, N.A.
To: AOL ADVERTISING INC.; AOL INC.; BUYSIGHT, INC.; MAPQUEST, INC.; PICTELA, INC.
Reel/Frame 036042/0053 →
SECURITY AGREEMENT Recorded Aug 2, 2013
From: AOL INC.; AOL ADVERTISING INC.; BUYSIGHT, INC.; MAPQUEST, INC.; PICTELA, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 030936/0011 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2009
From: AOL LLC
To: AOL INC.
Reel/Frame 023720/0309 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2009
From: ARTZ, DAVID RYAN
To: AOL LLC
Reel/Frame 022899/0154 →