diff --git a/src/Web/HTML/HTMLDocument.js b/src/Web/HTML/HTMLDocument.js
index 6f28e1e..3e934a2 100644
--- a/src/Web/HTML/HTMLDocument.js
+++ b/src/Web/HTML/HTMLDocument.js
@@ -23,3 +23,24 @@ exports._currentScript = function (doc) {
return doc.currentScript;
};
};
+
+exports.referrer = function (doc) {
+ return function () {
+ return doc.referrer;
+ };
+};
+
+exports.title = function (doc) {
+ return function () {
+ return doc.title;
+ };
+};
+
+exports.setTitle = function (title) {
+ return function (doc) {
+ return function () {
+ doc.title = title;
+ return {};
+ };
+ };
+};
\ No newline at end of file
diff --git a/src/Web/HTML/HTMLDocument.purs b/src/Web/HTML/HTMLDocument.purs
index 1da785a..15dc6ba 100644
--- a/src/Web/HTML/HTMLDocument.purs
+++ b/src/Web/HTML/HTMLDocument.purs
@@ -14,6 +14,9 @@ module Web.HTML.HTMLDocument
, readyState
, activeElement
, currentScript
+ , referrer
+ , title
+ , setTitle
) where
import Prelude
@@ -84,3 +87,8 @@ foreign import _currentScript :: HTMLDocument -> Effect (Nullable HTMLScriptElem
currentScript :: HTMLDocument -> Effect (Maybe HTMLScriptElement)
currentScript = map toMaybe <<< _currentScript
+
+foreign import referrer :: HTMLDocument -> Effect String
+
+foreign import title :: HTMLDocument -> Effect String
+foreign import setTitle :: String -> HTMLDocument -> Effect Unit
\ No newline at end of file