IP Library Granted Patent US 10,417,300
Granted Patent B2
US 10,417,300 · App. 15/713,568 · Granted Sep 17, 2019

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 10,417,300
App. No.
15/713,568
Granted
Sep 17, 2019
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 (74)

1. A computer-implemented method for detecting visible objects of a web document, the method comprising the following operations performed by at least one processor:

computing a first parameter associated with a view port of a user web browser and a second parameter associated with the web document;

determining whether an object parameter is cached, the object parameter being associated with a web object;

retrieving the object parameter from a cache memory when the object parameter is cached;

computing the object parameter based on metadata associated with the web object when the object parameter is not cached, the metadata including a total linear height;

determining whether a lower edge of the web object falls above an expanded upper edge of the view port based on the first parameter, the second parameter, and the object parameter, the expanded upper edge being an upper edge of the view port modified by a threshold distance;

determining the web object is visible by the user when the lower edge of the object falls above the expanded upper edge; and

upon determining that the web object is visible, manipulating the web object by retrieving updated content from a server or automatically executing a script for a call-back function related to the web object.

2. The computer-implemented method of claim 1 , wherein the web object includes a function that embeds content in a format appropriate for the user web browser.

3. The computer-implemented method of claim 1 , wherein the threshold distance is specified by the user web browser to be a zero-pixel.

4. The computer-implemented method of claim 1 , wherein computing a first parameter comprises:

determining whether the web browser supports a height property, the height property representing an inner height of the view port;

computing the first parameter using the height property when the web browser supports the height property; and

computing the first parameter using a plurality of alternative properties when the web browser does not support the height object property.

5. The computer-implemented method of claim 1 , wherein computing the object parameter comprises:

determining a relative position between upper objects in the web document and the web object, the upper objects being objects above the web object in the web document; and

generating a web object position by adding the relative positions.

6. The computer-implemented method of claim 1 , wherein:

the second parameter associated with the document is a web document height; and

determining whether the object parameter is cached comprises:

determining whether the web document height has changed since the object parameter was cached; and

modifying the object parameter when the height of the web document has changed.

7. The computer-implemented method of claim 1 , further comprising:

determining whether an upper edge of the web object falls below an expanded lower edge of the view port, the expanded lower edge being a lower edge of the view port modified by the threshold distance; and

determining the web object is not visible by the user when the upper edge of the object falls below the expanded lower edge.

8. An apparatus, comprising:

a storage device that stores a set of instructions; and

at least one processor coupled to the storage device, the set of instructions configuring the at least one processor to:

compute a first parameter associated with a view port of a user web browser and a second parameter associated with the web document;

determine whether an object parameter is cached, the object parameter being associated with a web object;

retrieve the object parameter from a cache memory when the object parameter is cached;

compute the object parameter based on metadata associated with the web object when the object parameter is not cached, the metadata including a total linear height;

determine whether a lower edge of the web object falls above an expanded upper edge of the view port based on the first parameter, the second parameter, and the object parameter, the expanded upper edge being an upper edge of the view port modified by a threshold distance;

determine the web object is visible by the user when the lower edge of the object falls above the expanded upper edge; and

upon determining that the web object is visible, manipulating the web object by retrieving updated content from a server or automatically executing a script for a call-back function related to the web object.

9. The apparatus of claim 8 , wherein the web object includes a function that embeds content in a format appropriate for the user web browser.

10. The apparatus of claim 8 , wherein the threshold distance is specified by the user web browser to be a zero-pixel.

11. The apparatus of claim 8 , wherein to compute a first parameter, the at least one processor is further configured to:

determine whether the web browser supports a height property, the height property representing an inner height of the view port;

compute the first parameter using the height property when the web browser supports the height property; and

compute the first parameter using a plurality of alternative properties when the web browser does not support the height object property.

12. The apparatus of claim 8 , wherein to compute the object parameter, the at least one processor is further configured to:

determine a relative position between upper objects in the web document and the web object, the upper objects being objects above the web object in the web document; and generate a web object position by adding the relative positions.

13. The apparatus of claim 8 , wherein:

the second parameter associated with the document is a web document height; and

to determine whether the object parameter is cached, the at least one processor is further configured to:

determine whether the web document height has changed since the object parameter was cached; and

modify the object parameter when the height of the web document has changed.

14. The apparatus of claim 8 , wherein the at least one processor is further configured to:

determine whether an upper edge of the web object falls below an expanded lower edge of the view port, the expanded lower edge being a lower edge of the view port modified by the threshold distance; and

determine the web object is not visible by the user when the upper edge of the object falls below the expanded lower edge.

15. A non-transitory computer-readable medium that stores instructions that, when executed by at least one processor, cause the at least one processor to:

compute a first parameter associated with a view port of a user web browser and a second parameter associated with the web document;

determine whether an object parameter is cached, the object parameter being associated with a web object;

retrieve the object parameter from a cache memory when the object parameter is cached;

compute the object parameter based on metadata associated with the web object when the object parameter is not cached, the metadata including a total linear height;

determine whether a lower edge of the web object falls above an expanded upper edge of the view port based on the first parameter, the second parameter, and the object parameter, the expanded upper edge being an upper edge of the view port modified by a threshold distance;

determine the web object is visible by the user when the lower edge of the object falls above the expanded upper edge; and

upon determining that the web object is visible, manipulate the web object by retrieving updated content from a server or automatically execute a script for a call-back function related to the web object.

16. The medium of claim 15 , wherein the web object includes a function that embeds content in a format appropriate for the user web browser.

17. The medium of claim 15 , wherein instructions that cause the at least one processor to compute a first parameter, further cause the processor to:

determine whether the web browser supports a height property, the height property representing an inner height of the view port;

compute the first parameter using the height property when the web browser supports the height property; and

compute the first parameter using a plurality of alternative properties when the web browser does not support the height object property.

18. The medium of claim 15 , wherein instructions that cause the at least one processor to compute the object parameter, further cause the processor to:

determine a relative position between upper objects in the web document and the web object, the upper objects being objects above the web object in the web document; and

generate a web object position by adding the relative positions.

19. The medium of claim 15 , wherein:

the second parameter associated with the document is a web document height; and instructions that cause the at least one processor determine whether the object parameter is cached, further cause the processor to:

determine whether the web document height has changed since the object parameter was cached; and

modify the object parameter when the height of the web document has changed.

20. The medium of claim 15 , wherein the stored instructions further cause the at least one processor to:

determine whether an upper edge of the web object falls below an expanded lower edge of the view port, the expanded lower edge being a lower edge of the view port modified by the threshold distance; and

determine the web object is not visible by the user when the upper edge of the object falls below the expanded lower edge.

Assignments (6)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2017
From: AOL LLC
To: AOL INC.
Reel/Frame 044117/0067 →
CHANGE OF NAME Recorded Oct 4, 2017
From: AOL INC.
To: OATH INC.
Reel/Frame 044127/0828 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2017
From: ARTZ, DAVID RYAN
To: AOL LLC
Reel/Frame 043675/0171 →